diff options
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.cpp')
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.cpp | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index fbf32bd18ba..26a7809eaa9 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -263,12 +263,18 @@ void ScriptMgr::Initialize() FillSpellSummary(); + // Load core script systems + // SmartAI + BeginScriptContext("core scripts"); AddSC_SmartScripts(); + FinishScriptContext(); + // Load all static linked scripts through the script loader function. + BeginScriptContext("static scripts"); ASSERT(_script_loader_callback, "Script loader callback wasn't registered!"); - _script_loader_callback(); + FinishScriptContext(); #ifdef SCRIPTS for (std::string const& scriptName : UnusedScriptNames) @@ -280,6 +286,21 @@ void ScriptMgr::Initialize() TC_LOG_INFO("server.loading", ">> Loaded %u C++ scripts in %u ms", GetScriptCount(), GetMSTimeDiffToNow(oldMSTime)); } +void ScriptMgr::BeginScriptContext(std::string const& context) +{ + _currentContext = context; +} + +void ScriptMgr::FinishScriptContext() +{ + _currentContext.clear(); +} + +void ScriptMgr::ReleaseScriptContext(std::string const& /*context*/) +{ + // ToDo +} + void ScriptMgr::Unload() { #define SCR_CLEAR(T) \ |