#pragma once

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

// Package: BP_Cannon

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "Engine_classes.hpp"
#include "EN_StanType_structs.hpp"
#include "EN_DamageType_structs.hpp"


SDK_NAMESPACE_START

// BlueprintGeneratedClass BP_Cannon.BP_Cannon_C
// 0x0058 (0x0300 - 0x02A8)
class ABP_Cannon_C final : public AActor
{
public:
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x02A8(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class UCPP_AC_CustomPhysicsForce*             CPP_AC_CustomPhysicsForce;                         // 0x02B0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBillboardComponent*                    ShotEffectLocation;                                // 0x02B8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBPC_CollisionSound_C*                  BPC_CollisionSound;                                // 0x02C0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBPC_PhysicsNetDormancyControl_C*       BPC_PhysicsNetDormancyControl;                     // 0x02C8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UNiagaraComponent*                      NI_Hit_Wood;                                       // 0x02D0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class USphereComponent*                       ShotArea;                                          // 0x02D8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UBillboardComponent*                    ShotLocation;                                      // 0x02E0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UStaticMeshComponent*                   StaticMesh;                                        // 0x02E8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	double                                        Health;                                            // 0x02F0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	class ABP_GameState_LINK_C*                   As_BP_Game_State_LINK;                             // 0x02F8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)

public:
	void StanDamage(EN_StanType StanType);
	void StaminaDamage(double Value);
	void ShotCannon(class AActor* TargetActor);
	void ReceiveTick(float DeltaSeconds_ReceiveTick);
	void ReceiveBeginPlay();
	void PhysicsOn_Replicate_();
	void PhysicsOn_Local_();
	void GetParryState(bool* State);
	void ExecuteUbergraph_BP_Cannon(int32 EntryPoint);
	void DamageToPlayerController(class AActor* TargetActor, double DamageValue, int32 TeamIndex, EN_DamageType DamageType, const struct FTransform& SourceAgentPoint, bool UnAvoidable, class FName DamageName, const struct FHitResult& HitRezult, class AActor* SourceActor);
	void Damage(double DamageValue, int32 TeamIndex, EN_DamageType DamageType, const struct FTransform& SourceAgentPoint, bool UnAvoidable, class FName DamageName, class AActor* SourceActor, struct FFinishFilter* Finish);

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

SDK_NAMESPACE_END
