#pragma once

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

// Package: BP_SpectatePawn_cLeon

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "Engine_classes.hpp"
#include "EN_cLeonGameMode_structs.hpp"


SDK_NAMESPACE_START

// BlueprintGeneratedClass BP_SpectatePawn_cLeon.BP_SpectatePawn_cLeon_C
// 0x0068 (0x03B8 - 0x0350)
class ABP_SpectatePawn_cLeon_C final : public ASpectatorPawn
{
public:
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x0350(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class UCameraComponent*                       Camera;                                            // 0x0358(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class USpringArmComponent*                    SpringArm;                                         // 0x0360(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class ABP_FirstPersonCharacter_Main_C*        SpectateTarget;                                    // 0x0368(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	class UWBP_Spectate_cLeon_C*                  SpectateWidget;                                    // 0x0370(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, InstancedReference, NoDestructor, HasGetValueTypeHash)
	class AController*                            SelfController;                                    // 0x0378(0x0008)(Edit, BlueprintVisible, Net, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, RepNotify, NoDestructor, HasGetValueTypeHash)
	bool                                          Current_Name_Plate_Visibility;                     // 0x0380(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_381[0x3];                                      // 0x0381(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	int32                                         NamePlateVisibilityType;                           // 0x0384(0x0004)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          IsFreeCamera;                                      // 0x0388(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_389[0x7];                                      // 0x0389(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class ABP_PlayerController_cLeon_C*           As_BP_Player_Controller_C_Leon;                    // 0x0390(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)
	class UFloatingPawnMovement*                  FloatingPawn;                                      // 0x0398(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, InstancedReference, NoDestructor, HasGetValueTypeHash)
	class ABP_FirstPersonCharacter_Main_C*        MyMainBody;                                        // 0x03A0(0x0008)(Edit, BlueprintVisible, Net, ZeroConstructor, DisableEditOnTemplate, NoDestructor, ExposeOnSpawn, HasGetValueTypeHash)
	bool                                          CanBackBody;                                       // 0x03A8(0x0001)(Edit, BlueprintVisible, Net, ZeroConstructor, IsPlainOldData, RepNotify, NoDestructor, ExposeOnSpawn, HasGetValueTypeHash)
	uint8                                         Pad_3A9[0x7];                                      // 0x03A9(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class ABP_GameState_cLeon_C*                  As_BP_Game_State_C_Leon;                           // 0x03B0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, NoDestructor, HasGetValueTypeHash)

public:
	void SwitchNamePlateVisibility();
	void SpectateTargetChange(class ABP_FirstPersonPlayerState_Online_cLeon_C* PlayerState, class APawn* Pawn);
	void Setup();
	void SetLocation(const struct FVector& NewLocation);
	void ReceiveTick(float DeltaSeconds_ReceiveTick);
	void ReceivePossessed(class AController* NewController_ReceivePossessed);
	void ReceiveDestroyed();
	void ReceiveBeginPlay();
	void ProvocationRemote(class ABP_FirstPersonCharacter_cLeon_Character_C* Target);
	void OnRep_SelfController();
	void OnRep_CanBackBody();
	void NamePlateUpdate();
	void MiniReplicateMovement();
	void InpActEvt_Two_K2Node_InputKeyEvent_4(const struct FKey& Key);
	void InpActEvt_RightMouseButton_K2Node_InputKeyEvent_2(const struct FKey& Key);
	void InpActEvt_One_K2Node_InputKeyEvent_0(const struct FKey& Key);
	void InpActEvt_IA_Shot_K2Node_EnhancedInputActionEvent_0(const struct FInputActionValue& ActionValue, float ElapsedTime, float TriggeredTime, const class UInputAction* SourceAction);
	void InpActEvt_Four_K2Node_InputKeyEvent_3(const struct FKey& Key);
	void InpActEvt_Five_K2Node_InputKeyEvent_1(const struct FKey& Key);
	void FreeCameraChange();
	void ExecuteUbergraph_BP_SpectatePawn_cLeon(int32 EntryPoint);
	void BackBody();

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

SDK_NAMESPACE_END
