summaryrefslogtreecommitdiff
path: root/src/server/game/Scripting/ScriptMgr.h
diff options
context:
space:
mode:
authorKargatum <dowlandtop@yandex.com>2021-06-23 04:19:02 +0700
committerGitHub <noreply@github.com>2021-06-22 23:19:02 +0200
commit5991b2769acc2f7c1959f1850a36a22c968bb45c (patch)
tree86ffae3a32cf14f00784a8a0c458d1644b438e4b /src/server/game/Scripting/ScriptMgr.h
parent20a67cbfcf78e830fce746ee1a7ea16db2f4ca80 (diff)
feat(Core/Scripts): split the huge scriptloader into smaller pieces (#5346)
* feat(Core/Scripts): split the huge scriptloader into smaller pieces * AddSC_swamp_of_sorrows del * 1 * add mod info * 1 * 039f0e0faa081352d19f34b6f0abaa4e74414988 Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.h')
-rw-r--r--src/server/game/Scripting/ScriptMgr.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index 4e629635d8..cec4cf8c68 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -1414,11 +1414,20 @@ public: /* Initialization */
void FillSpellSummary();
void CheckIfScriptsInDatabaseExist();
- const char* ScriptsVersion() const { return "Integrated Trinity Scripts"; }
+ const char* ScriptsVersion() const { return "Integrated Azeroth Scripts"; }
void IncrementScriptCount() { ++_scriptCount; }
uint32 GetScriptCount() const { return _scriptCount; }
+ typedef void(*ScriptLoaderCallbackType)();
+
+ /// Sets the script loader callback which is invoked to load scripts
+ /// (Workaround for circular dependency game <-> scripts)
+ void SetScriptLoader(ScriptLoaderCallbackType script_loader_callback)
+ {
+ _script_loader_callback = script_loader_callback;
+ }
+
public: /* Unloading */
void Unload();
@@ -1873,6 +1882,8 @@ private:
//atomic op counter for active scripts amount
std::atomic<long> _scheduledScripts;
+
+ ScriptLoaderCallbackType _script_loader_callback;
};
#define sScriptMgr ScriptMgr::instance()