diff options
author | ShadowNinja <shadowninja@minetest.net> | 2014-12-12 14:49:19 -0500 |
---|---|---|
committer | ShadowNinja <shadowninja@minetest.net> | 2017-05-06 15:33:19 -0400 |
commit | 43d1f375d18a2fbc547a9b4f23d1354d645856ca (patch) | |
tree | 15de6977737b440b9d265f85dc1fe3c71e996a45 /src/script/scripting_mainmenu.cpp | |
parent | a024042bf5ad487685e952da7b96ffa845cd7731 (diff) | |
download | minetest-43d1f375d18a2fbc547a9b4f23d1354d645856ca.tar.gz minetest-43d1f375d18a2fbc547a9b4f23d1354d645856ca.tar.bz2 minetest-43d1f375d18a2fbc547a9b4f23d1354d645856ca.zip |
Use a settings object for the main settings
This unifies the settings APIs.
This also unifies the sync and async registration APIs, since the async
registration API did not support adding non-functions to the API table.
Diffstat (limited to 'src/script/scripting_mainmenu.cpp')
-rw-r--r-- | src/script/scripting_mainmenu.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/script/scripting_mainmenu.cpp b/src/script/scripting_mainmenu.cpp index d79864a95..48957b472 100644 --- a/src/script/scripting_mainmenu.cpp +++ b/src/script/scripting_mainmenu.cpp @@ -59,17 +59,16 @@ MainMenuScripting::MainMenuScripting(GUIEngine* guiengine) /******************************************************************************/ void MainMenuScripting::initializeModApi(lua_State *L, int top) { + registerLuaClasses(L, top); + // Initialize mod API modules ModApiMainMenu::Initialize(L, top); ModApiUtil::Initialize(L, top); ModApiSound::Initialize(L, top); - // Register reference classes (userdata) - LuaSettings::Register(L); - - // Register functions to async environment - ModApiMainMenu::InitializeAsync(asyncEngine); - ModApiUtil::InitializeAsync(asyncEngine); + asyncEngine.registerStateInitializer(registerLuaClasses); + asyncEngine.registerStateInitializer(ModApiMainMenu::InitializeAsync); + asyncEngine.registerStateInitializer(ModApiUtil::InitializeAsync); // Initialize async environment //TODO possibly make number of async threads configurable @@ -77,6 +76,12 @@ void MainMenuScripting::initializeModApi(lua_State *L, int top) } /******************************************************************************/ +void MainMenuScripting::registerLuaClasses(lua_State *L, int top) +{ + LuaSettings::Register(L); +} + +/******************************************************************************/ void MainMenuScripting::step() { asyncEngine.step(getStack()); |