diff --git a/src/content/ContentLoader.cpp b/src/content/ContentLoader.cpp index ee2903bb6..b38d933fe 100644 --- a/src/content/ContentLoader.cpp +++ b/src/content/ContentLoader.cpp @@ -334,7 +334,7 @@ void ContentLoader::load() { fixPackIndices(); - loadMainScript(*runtime); + loadContentScript(*runtime); auto folder = pack->folder; @@ -342,8 +342,6 @@ void ContentLoader::load() { EnginePaths::CONFIG_DEFAULTS.string() ); - scripting::on_content_initialization(); - // Load world generators io::path generatorsDir = folder / "generators"; foreach_file(generatorsDir, [this](const io::path& file) { @@ -466,17 +464,16 @@ void ContentLoader::reloadScript(const Content& content, ItemDef& item) { load_script(content, item); } -void ContentLoader::loadMainScript(ContentPackRuntime& runtime) { +void ContentLoader::loadContentScript(ContentPackRuntime& runtime) { const auto& pack = runtime.getInfo(); const auto& folder = pack.folder; - io::path scriptFile = folder / "scripts/main.lua"; + io::path scriptFile = folder / "scripts/content.lua"; if (io::is_regular_file(scriptFile)) { - scripting::load_main_script( + scripting::load_content_script( runtime.getEnvironment(), pack.id, scriptFile, - pack.id + ":scripts/main.lua", - runtime.mainfuncsset + pack.id + ":scripts/content.lua" ); } } diff --git a/src/content/ContentLoader.hpp b/src/content/ContentLoader.hpp index 0dd292809..aa65478ae 100644 --- a/src/content/ContentLoader.hpp +++ b/src/content/ContentLoader.hpp @@ -58,7 +58,7 @@ public: void load(); static void loadScripts(Content& content); - static void loadMainScript(ContentPackRuntime& pack); + static void loadContentScript(ContentPackRuntime& pack); static void loadWorldScript(ContentPackRuntime& pack); static void reloadScript(const Content& content, Block& block); static void reloadScript(const Content& content, ItemDef& item); diff --git a/src/content/ContentPack.hpp b/src/content/ContentPack.hpp index 9940732fb..a4548d038 100644 --- a/src/content/ContentPack.hpp +++ b/src/content/ContentPack.hpp @@ -129,19 +129,12 @@ struct WorldFuncsSet { bool oninventoryclosed; }; -struct MainFuncsSet { - bool oncontentinitialization; - bool onscriptsloading; - bool oncontentloaded; -}; - class ContentPackRuntime { ContentPack info; ContentPackStats stats {}; scriptenv env; public: WorldFuncsSet worldfuncsset {}; - MainFuncsSet mainfuncsset {}; ContentPackRuntime(ContentPack info, scriptenv env); ~ContentPackRuntime(); diff --git a/src/logic/scripting/scripting.cpp b/src/logic/scripting/scripting.cpp index 2be28695b..bba9f6837 100644 --- a/src/logic/scripting/scripting.cpp +++ b/src/logic/scripting/scripting.cpp @@ -627,16 +627,6 @@ void scripting::on_ui_close(UiDocument* layout, Inventory* inventory) { }); } -void scripting::on_content_initialization() { - auto L = lua::get_main_state(); - - for (auto& pack : content_control->getAllContentPacks()) { - lua::emit_event(L, pack.id + ":.oncontentinitialization", [](auto L) { - return 0; - }); - } -} - void scripting::on_scripts_loading() { auto L = lua::get_main_state(); @@ -793,17 +783,15 @@ void scripting::load_world_script( register_event(env, "on_inventory_closed", prefix + ":.inventoryclosed"); } -void scripting::load_main_script( +void scripting::load_content_script( const scriptenv& senv, const std::string& prefix, const io::path& file, - const std::string& fileName, - MainFuncsSet& funcsset + const std::string& fileName ) { int env = *senv; - lua::pop(lua::get_main_state(), load_script(env, "main", file, fileName)); + lua::pop(lua::get_main_state(), load_script(env, "content", file, fileName)); - register_event(env, "on_content_initialization", prefix + ":.oncontentinitialization"); register_event(env, "on_scripts_loading", prefix + ":.onscriptsloading"); register_event(env, "on_content_loaded", prefix + ":.oncontentloaded"); } diff --git a/src/logic/scripting/scripting.hpp b/src/logic/scripting/scripting.hpp index b9152921e..9d29528b8 100644 --- a/src/logic/scripting/scripting.hpp +++ b/src/logic/scripting/scripting.hpp @@ -27,7 +27,6 @@ struct BlockFuncNamesCache; struct ItemFuncsSet; struct ItemFuncNamesCache; struct WorldFuncsSet; -struct MainFuncsSet; struct UserComponent; struct UiDocScript; class BlocksController; @@ -161,9 +160,6 @@ namespace scripting { /// @brief Called on UI view close void on_ui_close(UiDocument* layout, Inventory* inventory); - /// @brief Called before loading - void on_content_initialization(); - /// @brief Called on Content loading void on_scripts_loading(); @@ -231,12 +227,11 @@ namespace scripting { WorldFuncsSet& funcsset ); - void load_main_script( + void load_content_script( const scriptenv& env, const std::string& packid, const io::path& file, - const std::string& fileName, - MainFuncsSet& funcsset + const std::string& fileName ); /// @brief Load script associated with an UiDocument