#pragma once

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

// Package: BP_DeviceBase

#include "Basic.hpp"

#include "ENUM_SaveDataUpdateType_structs.hpp"
#include "Engine_structs.hpp"
#include "Engine_classes.hpp"
#include "EN_DeviceState_structs.hpp"
#include "CoreUObject_structs.hpp"
#include "EN_DeviceOnlineMode_structs.hpp"


SDK_NAMESPACE_START

// BlueprintGeneratedClass BP_DeviceBase.BP_DeviceBase_C
// 0x0048 (0x02F0 - 0x02A8)
class ABP_DeviceBase_C : public AActor
{
public:
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x02A8(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class UObject*                                BPC_UpdateLineSignalControl;                       // 0x02B0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UStaticMeshComponent*                   StaticMesh;                                        // 0x02B8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UDeviceComponent_C*                     DeviceComonent;                                    // 0x02C0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, NonTransactional, NoDestructor, HasGetValueTypeHash)
	EN_DeviceState                                DeviceState;                                       // 0x02C8(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_2C9[0x7];                                      // 0x02C9(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<class AActor*>                         SignalDevices;                                     // 0x02D0(0x0010)(Edit, BlueprintVisible, DisableEditOnTemplate)
	int32                                         ActivateSaveIndex;                                 // 0x02E0(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	struct FColor                                 Color;                                             // 0x02E4(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          UpdateSaveOnlyInitialize;                          // 0x02E8(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	EN_DeviceOnlineMode                           OnlineMode;                                        // 0x02E9(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

public:
	void DeviceStateUpdate(const struct FST_EventValue& EventValue, struct FST_EventValue* ReturnEventValue);
	void ExecuteUbergraph_BP_DeviceBase(int32 EntryPoint);
	void OnStateChange(EN_DeviceState State);
	void ReceiveBeginPlay();
	void SaveUpdateFunc();
	void UpdateSave(int32 UpdateIndex, ENUM_SaveDataUpdateType LoadType);
	void UserConstructionScript();

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

SDK_NAMESPACE_END
