#pragma once

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

// Package: ISMPool

#include "Basic.hpp"

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


SDK_NAMESPACE_START

// Class ISMPool.ISMPoolSubSystem
// 0x0050 (0x0080 - 0x0030)
class UISMPoolSubSystem final : public UWorldSubsystem
{
public:
	uint8                                         Pad_30[0x50];                                      // 0x0030(0x0050)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	void OnActorEndPlay(class AActor* InSource, EEndPlayReason Reason);

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

// Class ISMPool.ISMPoolActor
// 0x0010 (0x02B8 - 0x02A8)
class AISMPoolActor final : public AActor
{
public:
	class UISMPoolComponent*                      ISMPoolComp;                                       // 0x02A8(0x0008)(Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, EditConst, InstancedReference, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPrivate, TObjectPtr)
	class UISMPoolDebugDrawComponent*             ISMPoolDebugDrawComp;                              // 0x02B0(0x0008)(Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, EditConst, InstancedReference, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPrivate, TObjectPtr)

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

// Class ISMPool.ISMPoolComponent
// 0x0130 (0x0370 - 0x0240)
class UISMPoolComponent final : public USceneComponent
{
public:
	uint8                                         Pad_240[0x130];                                    // 0x0240(0x0130)(Fixing Struct Size After Last Property [ Dumper-7 ])

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

// Class ISMPool.ISMPoolDebugDrawComponent
// 0x0020 (0x05A0 - 0x0580)
class UISMPoolDebugDrawComponent final : public UDebugDrawComponent
{
public:
	bool                                          bShowGlobalStats;                                  // 0x0580(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bShowStats;                                        // 0x0581(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	bool                                          bShowBounds;                                       // 0x0582(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_583[0x5];                                      // 0x0583(0x0005)(Fixing Size After Last Property [ Dumper-7 ])
	class UInstancedStaticMeshComponent*          SelectedComponent;                                 // 0x0588(0x0008)(ExportObject, ZeroConstructor, Transient, InstancedReference, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic, TObjectPtr)
	uint8                                         Pad_590[0x10];                                     // 0x0590(0x0010)(Fixing Struct Size After Last Property [ Dumper-7 ])

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

SDK_NAMESPACE_END
