#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: BP_AI_Base

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "Engine_classes.hpp"
#include "CoreUObject_structs.hpp"
#include "ENUM_ActorType_structs.hpp"
#include "EN_StrafingDirection_structs.hpp"
#include "ENUM_CameraMode_structs.hpp"


SDK_NAMESPACE_START

// BlueprintGeneratedClass BP_AI_Base.BP_AI_Base_C
// 0x01A0 (0x07F0 - 0x0650)
class ABP_AI_Base_C final : public ACharacter
{
public:
	uint8                                         Pad_648[0x8];                                      // 0x0648(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x0650(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class UAudioComponent*                        Audio;                                             // 0x0658(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBillboardComponent*                    CentorPosition;                                    // 0x0660(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBillboardComponent*                    SubPosition;                                       // 0x0668(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class USphereComponent*                       AttackArea;                                        // 0x0670(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_678[0x8];                                      // 0x0678(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	struct FTransform                             DefaultTransform;                                  // 0x0680(0x0060)(Edit, BlueprintVisible, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          NotShot;                                           // 0x06E0(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_6E1[0x7];                                      // 0x06E1(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	double                                        DefaultHeight;                                     // 0x06E8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	double                                        NormalizeScale;                                    // 0x06F0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	double                                        TimeDiff;                                          // 0x06F8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	class UClass*                                 As_ABP_Penguin;                                    // 0x0700(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	bool                                          Trace;                                             // 0x0708(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_709[0x7];                                      // 0x0709(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class ABP_FirstPersonCharacter_Main_C*        As_BP_First_Person_Character;                      // 0x0710(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_718[0x8];                                      // 0x0718(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	struct FTransform                             FirstTransform;                                    // 0x0720(0x0060)(Edit, BlueprintVisible, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          AnimationNow;                                      // 0x0780(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          StanNow;                                           // 0x0781(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          EnableParry;                                       // 0x0782(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          BarrierNow;                                        // 0x0783(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          AvoidanceCoolDown;                                 // 0x0784(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_785[0x3];                                      // 0x0785(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	double                                        DashSpeed;                                         // 0x0788(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	double                                        DefaultDashSpeed;                                  // 0x0790(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	TMap<int32, double>                           SppedMultiply_Difficulty;                          // 0x0798(0x0050)(Edit, BlueprintVisible, DisableEditOnInstance)
	double                                        DefautAcceleration;                                // 0x07E8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

public:
	void ExecuteUbergraph_BP_AI_Base(int32 EntryPoint);
	void Set_Difficulty(int32 Value);
	void PlayAvoidanceAnimation();
	void CoolDownEnd();
	void PlayPenguinVoice();
	void StanEvent();
	void SetStrafing(bool IsStrafing, EN_StrafingDirection Direction);
	void Fix();
	void Attack();
	void ReceiveDestroyed();
	void Fire_End();
	void Fire();
	void Reverse(const struct FTransform& NewPosition, const struct FVector& HitNormal);
	void View_In_Out_Function(int32 Stencil_Value);
	void Delete();
	void InAngleOfView(bool InState, double DeltaTime, ENUM_CameraMode CameraMode);
	void SetActorInfo(const struct FVector& ToPosition, class USceneComponent* Comp);
	void ReceiveBeginPlay();
	void OnCompleted_D66390244B1D26971A66C6879A2B7B30(class FName NotifyName);
	void OnBlendOut_D66390244B1D26971A66C6879A2B7B30(class FName NotifyName);
	void OnInterrupted_D66390244B1D26971A66C6879A2B7B30(class FName NotifyName);
	void OnNotifyBegin_D66390244B1D26971A66C6879A2B7B30(class FName NotifyName);
	void OnNotifyEnd_D66390244B1D26971A66C6879A2B7B30(class FName NotifyName);
	void OnCompleted_7F7A9BDF48B2C2D2332A36937C7AF329(class FName NotifyName);
	void OnBlendOut_7F7A9BDF48B2C2D2332A36937C7AF329(class FName NotifyName);
	void OnInterrupted_7F7A9BDF48B2C2D2332A36937C7AF329(class FName NotifyName);
	void OnNotifyBegin_7F7A9BDF48B2C2D2332A36937C7AF329(class FName NotifyName);
	void OnNotifyEnd_7F7A9BDF48B2C2D2332A36937C7AF329(class FName NotifyName);
	void OnCompleted_2220D7D146417860FF48A29DEC6C51FA(class FName NotifyName);
	void OnBlendOut_2220D7D146417860FF48A29DEC6C51FA(class FName NotifyName);
	void OnInterrupted_2220D7D146417860FF48A29DEC6C51FA(class FName NotifyName);
	void OnNotifyBegin_2220D7D146417860FF48A29DEC6C51FA(class FName NotifyName);
	void OnNotifyEnd_2220D7D146417860FF48A29DEC6C51FA(class FName NotifyName);
	void OnCompleted_0618DEBD4A5929F3CACAEAA199FA94CD(class FName NotifyName);
	void OnBlendOut_0618DEBD4A5929F3CACAEAA199FA94CD(class FName NotifyName);
	void OnInterrupted_0618DEBD4A5929F3CACAEAA199FA94CD(class FName NotifyName);
	void OnNotifyBegin_0618DEBD4A5929F3CACAEAA199FA94CD(class FName NotifyName);
	void OnNotifyEnd_0618DEBD4A5929F3CACAEAA199FA94CD(class FName NotifyName);
	void SoptAI();
	void RestartAI();
	void GetActorInfo(struct FTransform* DefaultTransform, bool* Not_In_Shot, struct FVector* CentorPosition, bool* IsPenguin, ENUM_ActorType* ActorType, bool* NonInPhoto);
	void GetCentorPosition(TArray<struct FVector>* CentorPosition);
	void GetCopyClass(class UStaticMeshComponent* CentorComponent, class UClass** Class_0, double* Scale, struct FVector* DefaultScale);
	void IsAiming(bool* IsAiming, int32* SuccessCount);
	void GetAvoidanceRotation(struct FRotator* Rotation);
	void IsBattleMode(bool* Bool);
	void IsAttackNow(bool* State);

public:
	static class UClass* StaticClass()
	{
		BP_STATIC_CLASS_IMPL("BP_AI_Base_C")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"BP_AI_Base_C")
	}
	static class ABP_AI_Base_C* GetDefaultObj()
	{
		return GetDefaultObjImpl<ABP_AI_Base_C>();
	}
};
DUMPER7_ASSERTS_ABP_AI_Base_C;

SDK_NAMESPACE_END
