diff options
Diffstat (limited to 'Runtime/Scripting')
-rw-r--r-- | Runtime/Scripting/RuntimeScriptingManager.h | 22 | ||||
-rw-r--r-- | Runtime/Scripting/ScriptGlobals.h | 10 | ||||
-rw-r--r-- | Runtime/Scripting/ScriptingManager.cpp | 14 |
3 files changed, 46 insertions, 0 deletions
diff --git a/Runtime/Scripting/RuntimeScriptingManager.h b/Runtime/Scripting/RuntimeScriptingManager.h new file mode 100644 index 0000000..b8db959 --- /dev/null +++ b/Runtime/Scripting/RuntimeScriptingManager.h @@ -0,0 +1,22 @@ +#pragma once +#include "Runtime/Utilities/Singleton.h" +#include "ScriptGlobals.h" +#include "Runtime/Utilities/UtilMacros.h" + +class RuntimeScriptingManager : public Singleton<RuntimeScriptingManager > +{ +public: + RuntimeScriptingManager(); + + GET(const ScriptGlobals&, Globals, m_Globals); + +private: + void FillGloabls(); + + ScriptGlobals m_Globals; // lua侧的全局方法 + +}; + +#define SCRIPT_GLOBAL RuntimeScriptingManager::Instance()->GetGlobals() + + diff --git a/Runtime/Scripting/ScriptGlobals.h b/Runtime/Scripting/ScriptGlobals.h new file mode 100644 index 0000000..af396bd --- /dev/null +++ b/Runtime/Scripting/ScriptGlobals.h @@ -0,0 +1,10 @@ +#pragma once +#include "Runtime/Lua/LuaHelper.h" + +#define DECL_LUA_FUNC(name) LuaBind::LuaFunction name + +// 全局方法和变量 +struct ScriptGlobals +{ + DECL_LUA_FUNC(setCurrentEvent); +};
\ No newline at end of file diff --git a/Runtime/Scripting/ScriptingManager.cpp b/Runtime/Scripting/ScriptingManager.cpp new file mode 100644 index 0000000..5b26262 --- /dev/null +++ b/Runtime/Scripting/ScriptingManager.cpp @@ -0,0 +1,14 @@ +#include "RuntimeScriptingManager.h" + +RuntimeScriptingManager::RuntimeScriptingManager() +{ + + + +} + +void RuntimeScriptingManager::FillGloabls() +{ + m_Globals.setCurrentEvent = "GameLab.Events.Event.SetCurrentEvent"; + +}
\ No newline at end of file |