summaryrefslogtreecommitdiff
path: root/Runtime/Scripting
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Scripting')
-rw-r--r--Runtime/Scripting/RuntimeScriptingManager.h22
-rw-r--r--Runtime/Scripting/ScriptGlobals.h10
-rw-r--r--Runtime/Scripting/ScriptingManager.cpp14
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