Files
BusyRabbit/Source/BusyRabbit/Public/BusyGameInstance.h
2025-07-09 01:08:35 +08:00

46 lines
838 B
C++

// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "slua.h"
#include "CoreMinimal.h"
#include "Engine/GameInstance.h"
#include "BusyGameInstance.generated.h"
/**
*
*/
UCLASS()
class BUSYRABBIT_API UBusyGameInstance : public UGameInstance
{
GENERATED_BODY()
public:
UBusyGameInstance();
public:
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FBusyOnEndFrameDelegate);
public:
virtual void Init()override;
virtual void Shutdown() override;
public:
void CreateLuaState();
void CloseLuaState();
void LuaStateInitCallback(NS_SLUA::lua_State* L);
public:
NS_SLUA::LuaState* state;
protected:
UPROPERTY(BlueprintAssignable)
FBusyOnEndFrameDelegate OnEndFrameDelegate;
void OnEndFrame();
protected: // luaside
NS_SLUA::LuaVar LuaGameInstance;
NS_SLUA::LuaVar OnLuaEndFrame;
};