#pragma once

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

// Package: MoverExamples

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "Engine_classes.hpp"
#include "Mover_classes.hpp"
#include "CoreUObject_classes.hpp"
#include "MoverExamples_structs.hpp"


SDK_NAMESPACE_START

// Class MoverExamples.MoverExampleAbilityInputsLibrary
// 0x0000 (0x0028 - 0x0028)
class UMoverExampleAbilityInputsLibrary final : public UBlueprintFunctionLibrary
{
public:
	static struct FMoverExampleAbilityInputs GetMoverExampleAbilityInputs(const struct FMoverDataCollection& FromCollection);

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("MoverExampleAbilityInputsLibrary")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"MoverExampleAbilityInputsLibrary")
	}
	static class UMoverExampleAbilityInputsLibrary* GetDefaultObj()
	{
		return GetDefaultObjImpl<UMoverExampleAbilityInputsLibrary>();
	}
};
DUMPER7_ASSERTS_UMoverExampleAbilityInputsLibrary;

// Class MoverExamples.MoverExamplesCharacter
// 0x00C0 (0x03E8 - 0x0328)
class AMoverExamplesCharacter : public APawn
{
public:
	uint8                                         Pad_328[0x8];                                      // 0x0328(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	class UInputAction*                           MoveInputAction;                                   // 0x0330(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	class UInputAction*                           LookInputAction;                                   // 0x0338(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	class UInputAction*                           JumpInputAction;                                   // 0x0340(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	class UInputAction*                           FlyInputAction;                                    // 0x0348(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	bool                                          bUseBaseRelativeMovement;                          // 0x0350(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bOrientRotationToMovement;                         // 0x0351(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bMaintainLastInputOrientation;                     // 0x0352(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_353[0x5];                                      // 0x0353(0x0005)(Fixing Size After Last Property [ Dumper-7 ])
	class UCharacterMoverComponent*               CharacterMotionComponent;                          // 0x0358(0x0008)(Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, Transient, EditConst, InstancedReference, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	class UNavMoverComponent*                     NavMoverComponent;                                 // 0x0360(0x0008)(Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, Transient, EditConst, InstancedReference, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	uint8                                         Pad_368[0x80];                                     // 0x0368(0x0080)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	struct FMoverInputCmdContext OnProduceInputInBlueprint(float DeltaMs, const struct FMoverInputCmdContext& InputCmd);
	void RequestMoveByIntent(const struct FVector& DesiredIntent);
	void RequestMoveByVelocity(const struct FVector& DesiredVelocity);

	class UCharacterMoverComponent* GetMoverComponent() const;

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("MoverExamplesCharacter")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"MoverExamplesCharacter")
	}
	static class AMoverExamplesCharacter* GetDefaultObj()
	{
		return GetDefaultObjImpl<AMoverExamplesCharacter>();
	}
};
DUMPER7_ASSERTS_AMoverExamplesCharacter;

// Class MoverExamples.MoverExamplesGameMode
// 0x0000 (0x0388 - 0x0388)
class AMoverExamplesGameMode final : public AGameMode
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("MoverExamplesGameMode")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"MoverExamplesGameMode")
	}
	static class AMoverExamplesGameMode* GetDefaultObj()
	{
		return GetDefaultObjImpl<AMoverExamplesGameMode>();
	}
};
DUMPER7_ASSERTS_AMoverExamplesGameMode;

// Class MoverExamples.MoverExamplesGameState
// 0x0000 (0x0320 - 0x0320)
class AMoverExamplesGameState final : public AGameState
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("MoverExamplesGameState")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"MoverExamplesGameState")
	}
	static class AMoverExamplesGameState* GetDefaultObj()
	{
		return GetDefaultObjImpl<AMoverExamplesGameState>();
	}
};
DUMPER7_ASSERTS_AMoverExamplesGameState;

// Class MoverExamples.MoverExamplesPhysicsCharacterMoverComponent
// 0x0000 (0x0510 - 0x0510)
class UMoverExamplesPhysicsCharacterMoverComponent : public UPhysicsCharacterMoverComponent
{
public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("MoverExamplesPhysicsCharacterMoverComponent")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"MoverExamplesPhysicsCharacterMoverComponent")
	}
	static class UMoverExamplesPhysicsCharacterMoverComponent* GetDefaultObj()
	{
		return GetDefaultObjImpl<UMoverExamplesPhysicsCharacterMoverComponent>();
	}
};
DUMPER7_ASSERTS_UMoverExamplesPhysicsCharacterMoverComponent;

// Class MoverExamples.Zipline
// 0x0000 (0x0000 - 0x0000)
class IZipline final
{
public:
	class USceneComponent* GetEndComponent();
	class USceneComponent* GetStartComponent();

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("Zipline")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"Zipline")
	}
	static class IZipline* GetDefaultObj()
	{
		return GetDefaultObjImpl<IZipline>();
	}

	class UObject* AsUObject()
	{
		return reinterpret_cast<UObject*>(this);
	}
	const class UObject* AsUObject() const
	{
		return reinterpret_cast<const UObject*>(this);
	}
};
DUMPER7_ASSERTS_IZipline;

// Class MoverExamples.ZiplineStartTransition
// 0x0008 (0x0048 - 0x0040)
class UZiplineStartTransition final : public UBaseMovementModeTransition
{
public:
	class FName                                   ZipliningModeName;                                 // 0x0040(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("ZiplineStartTransition")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"ZiplineStartTransition")
	}
	static class UZiplineStartTransition* GetDefaultObj()
	{
		return GetDefaultObjImpl<UZiplineStartTransition>();
	}
};
DUMPER7_ASSERTS_UZiplineStartTransition;

// Class MoverExamples.ZiplineEndTransition
// 0x0008 (0x0048 - 0x0040)
class UZiplineEndTransition final : public UBaseMovementModeTransition
{
public:
	class FName                                   AutoExitToMode;                                    // 0x0040(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("ZiplineEndTransition")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"ZiplineEndTransition")
	}
	static class UZiplineEndTransition* GetDefaultObj()
	{
		return GetDefaultObjImpl<UZiplineEndTransition>();
	}
};
DUMPER7_ASSERTS_UZiplineEndTransition;

// Class MoverExamples.ZipliningMode
// 0x0008 (0x0078 - 0x0070)
class UZipliningMode final : public UBaseMovementMode
{
public:
	float                                         MaxSpeed;                                          // 0x0070(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_74[0x4];                                       // 0x0074(0x0004)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("ZipliningMode")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"ZipliningMode")
	}
	static class UZipliningMode* GetDefaultObj()
	{
		return GetDefaultObjImpl<UZipliningMode>();
	}
};
DUMPER7_ASSERTS_UZipliningMode;

// Class MoverExamples.FollowPathMode
// 0x0030 (0x00A0 - 0x0070)
class UFollowPathMode final : public UBaseMovementMode
{
public:
	TArray<struct FInterpControlPoint>            ControlPoints;                                     // 0x0070(0x0010)(Edit, BlueprintVisible, ZeroConstructor, NativeAccessSpecifierPublic)
	EInterpToBehaviourType                        BehaviourType;                                     // 0x0080(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	EFollowPathRotationType                       RotationType;                                      // 0x0081(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_82[0x2];                                       // 0x0082(0x0002)(Fixing Size After Last Property [ Dumper-7 ])
	float                                         Duration;                                          // 0x0084(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_88[0x18];                                      // 0x0088(0x0018)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("FollowPathMode")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"FollowPathMode")
	}
	static class UFollowPathMode* GetDefaultObj()
	{
		return GetDefaultObjImpl<UFollowPathMode>();
	}
};
DUMPER7_ASSERTS_UFollowPathMode;

// Class MoverExamples.FollowSplineMode
// 0x0050 (0x00C0 - 0x0070)
class UFollowSplineMode final : public UBaseMovementMode
{
public:
	EInterpToBehaviourType                        BehaviourType;                                     // 0x0070(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	EFollowSplineRotationType                     RotationType;                                      // 0x0071(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bOrientMoverToMovement;                            // 0x0072(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bConstantFollowVelocity;                           // 0x0073(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          StartReveresed;                                    // 0x0074(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_75[0x3];                                       // 0x0075(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	struct FSplineOffsetRangeInput                StartOffset;                                       // 0x0078(0x0008)(Edit, BlueprintVisible, NoDestructor, NativeAccessSpecifierPublic)
	struct FSplineOffsetRangeInput                EndOffset;                                         // 0x0080(0x0008)(Edit, BlueprintVisible, NoDestructor, NativeAccessSpecifierPublic)
	float                                         CustomDurationSecondsOverride;                     // 0x0088(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_8C[0x4];                                       // 0x008C(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class UCurveFloat*                            InterpolationCurve;                                // 0x0090(0x0008)(Edit, BlueprintVisible, ZeroConstructor, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic, TObjectPtr)
	class USplineComponent*                       ControlSpline;                                     // 0x0098(0x0008)(Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, EditConst, InstancedReference, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected, TObjectPtr)
	uint8                                         Pad_A0[0x20];                                      // 0x00A0(0x0020)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	void SetControlSpline(const class AActor* SplineProviderActor, const struct FSplineOffsetRangeInput& Offset);

public:
	static class UClass* StaticClass()
	{
		STATIC_CLASS_IMPL("FollowSplineMode")
	}
	static const class FName& StaticName()
	{
		STATIC_NAME_IMPL(L"FollowSplineMode")
	}
	static class UFollowSplineMode* GetDefaultObj()
	{
		return GetDefaultObjImpl<UFollowSplineMode>();
	}
};
DUMPER7_ASSERTS_UFollowSplineMode;

SDK_NAMESPACE_END
