#pragma once

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

// Package: BP_Glue_CustomPhysics_V2

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "CoreUObject_structs.hpp"
#include "PenguinHotel_classes.hpp"
#include "EN_StanType_structs.hpp"
#include "EN_DamageType_structs.hpp"


SDK_NAMESPACE_START

// BlueprintGeneratedClass BP_Glue_CustomPhysics_V2.BP_Glue_CustomPhysics_V2_C
// 0x00F0 (0x03E0 - 0x02F0)
class ABP_Glue_CustomPhysics_V2_C final : public ACPP_Glue
{
public:
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x02F0(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class USphereComponent*                       Sphere;                                            // 0x02F8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UWidgetComponent*                       Widget;                                            // 0x0300(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UStaticMeshComponent*                   GlueArea;                                          // 0x0308(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	float                                         ScaleAnim_Scale_19AF463B47A89E5F899099A7D25A237F;  // 0x0310(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	ETimelineDirection                            ScaleAnim__Direction_19AF463B47A89E5F899099A7D25A237F; // 0x0314(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_315[0x3];                                      // 0x0315(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	class UTimelineComponent*                     ScaleAnim;                                         // 0x0318(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
	float                                         DebugVisualize_Scale_0A93E7EB41E4F9D8379B149B58701A9F; // 0x0320(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	ETimelineDirection                            DebugVisualize__Direction_0A93E7EB41E4F9D8379B149B58701A9F; // 0x0324(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_325[0x3];                                      // 0x0325(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	class UTimelineComponent*                     DebugVisualize;                                    // 0x0328(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
	TArray<class UPrimitiveComponent*>            HitComponents;                                     // 0x0330(0x0010)(Edit, BlueprintVisible, ContainsInstancedReference)
	class UMaterialInstanceDynamic*               DynamicMat;                                        // 0x0340(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	class ULBPC_Glue_C*                           GlueComp;                                          // 0x0348(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, InstancedReference, NoDestructor, HasGetValueTypeHash)
	TArray<class UBPC_PowerDispersion_C*>         ParentDispattionComonents;                         // 0x0350(0x0010)(Edit, BlueprintVisible, DisableEditOnInstance, ContainsInstancedReference)
	TArray<class AActor*>                         DebugParentActor;                                  // 0x0360(0x0010)(Edit, BlueprintVisible, DisableEditOnTemplate)
	double                                        GroundDistance;                                    // 0x0370(0x0008)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          LinkedGround;                                      // 0x0378(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_379[0x7];                                      // 0x0379(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class ABP_LinkManager_C*                      LinkManager;                                       // 0x0380(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	int32                                         MathCount;                                         // 0x0388(0x0004)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_38C[0x4];                                      // 0x038C(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class UWBP_GlueValueText_C*                   GlueText;                                          // 0x0390(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, InstancedReference, NoDestructor, HasGetValueTypeHash)
	double                                        BeforeValue;                                       // 0x0398(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	class ANavLinkProxy*                          NavLinkProxy;                                      // 0x03A0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	int32                                         StaticIndex;                                       // 0x03A8(0x0004)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_3AC[0x4];                                      // 0x03AC(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	struct FVector                                StaticNavPoint;                                    // 0x03B0(0x0018)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          IsDamageBreak;                                     // 0x03C8(0x0001)(Edit, BlueprintVisible, Net, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_3C9[0x7];                                      // 0x03C9(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class UBP_PenguinBodyPreset_C*                BodyPresetDatas;                                   // 0x03D0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	int32                                         DynamicColorIndex;                                 // 0x03D8(0x0004)(Edit, BlueprintVisible, Net, ZeroConstructor, IsPlainOldData, RepNotify, NoDestructor, ExposeOnSpawn, HasGetValueTypeHash)

public:
	void UpdateGlueVisual();
	void StanDamage(EN_StanType StanType);
	void StaminaDamage(double Value);
	void SnapGlue(const struct FVector& WorldPosition, const TArray<class UPrimitiveComponent*>& TargetPrimitives);
	void SetGlueColor();
	void ScaleAnim__UpdateFunc();
	void ScaleAnim__FinishedFunc();
	void ReceiveDestroyed();
	void ReceiveBeginPlay();
	void OnRep_DynamicColorIndex();
	void GlueViewDistanceCheck();
	void GetParryState(bool* State);
	void ExecuteUbergraph_BP_Glue_CustomPhysics_V2(int32 EntryPoint);
	void DebugVisualize__UpdateFunc();
	void DebugVisualize__FinishedFunc();
	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);
	void AddPower(double power, class AActor* SourceActor);
	void AddCustomRevicePower(float PowerAmount_AddCustomRevicePower);
	void AddCustomForce(double AddValue);

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

SDK_NAMESPACE_END
