From 36f42b74630d4bca2d1d276d57c4c967d0290380 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 11 Nov 2021 15:05:40 +0800 Subject: *misc --- Data/DefaultContent/Libraries/GameLab/Events/Event.lua | 8 +++++--- Data/DefaultContent/Libraries/GameLab/GlobalTable.lua | 15 +++++++++++++++ Data/DefaultContent/Libraries/GameLab/init.lua | 2 ++ 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 Data/DefaultContent/Libraries/GameLab/GlobalTable.lua (limited to 'Data/DefaultContent/Libraries') diff --git a/Data/DefaultContent/Libraries/GameLab/Events/Event.lua b/Data/DefaultContent/Libraries/GameLab/Events/Event.lua index 214d61e..f2940bc 100644 --- a/Data/DefaultContent/Libraries/GameLab/Events/Event.lua +++ b/Data/DefaultContent/Libraries/GameLab/Events/Event.lua @@ -1,7 +1,9 @@ -local Event = {} -GameLab.Events.Event = Event +local Debug = GameLab.Debug +local inspect = require("inspect") -Event.current = {} +local Event = GameLab.GlobalTable("GameLab.Events.Event") + +Event.current = nil Event.SetCurrentEvent = function(evt) Event.current = evt diff --git a/Data/DefaultContent/Libraries/GameLab/GlobalTable.lua b/Data/DefaultContent/Libraries/GameLab/GlobalTable.lua new file mode 100644 index 0000000..10e3811 --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/GlobalTable.lua @@ -0,0 +1,15 @@ +local GlobalTable = function(tbName) + local tb = {} + + local shortName = string.match(tbName, "%.*(%w+)$") + local t = _G + for pkg in string.gmatch(tbName, "%.*(%w+)%.") do + t[pkg] = t[pkg] or {} + t = t[pkg] + end + t[shortName] = tb + + return tb +end + +return GlobalTable \ No newline at end of file diff --git a/Data/DefaultContent/Libraries/GameLab/init.lua b/Data/DefaultContent/Libraries/GameLab/init.lua index 8f61b05..df0e19a 100644 --- a/Data/DefaultContent/Libraries/GameLab/init.lua +++ b/Data/DefaultContent/Libraries/GameLab/init.lua @@ -29,4 +29,6 @@ GameLab.GlobalClass = require("GameLab.GlobalClass") GameLab.Enum = require("GameLab.Enum") GameLab.GlobalEnum = require("GameLab.GlobalEnum") +GameLab.GlobalTable = require("GameLab.GlobalTable") + return GameLab \ No newline at end of file -- cgit v1.1-26-g67d0