diff options
author | Naios <naios-dev@live.de> | 2015-11-04 21:20:07 +0100 |
---|---|---|
committer | Naios <naios-dev@live.de> | 2016-04-11 21:42:16 +0200 |
commit | 3123c278b9f7dca36d4edcafc95f40f37ec3e4eb (patch) | |
tree | 3d77e4e7c42510bd20c2f2b34edacb4129361e04 /src/server/game/Scripting/ScriptMgr.h | |
parent | 8660f90bdfaeb33afd9bf63988b30d7783a527cc (diff) |
Core/Game: Add a dynamic script reloader which reloads scripts modules on changes.
* is responsible for registering plain modules.
* requires compilation with the `WITH_DYNAMIC_LINKING` flag.
* requires further support of the ScriptMgr.
(cherry picked from commit bc0f2b6e5acd24f414508edb3b826a20a12bce62)
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.h')
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 36df5e20552..fb4f798bcc9 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -834,8 +834,6 @@ class TC_GAME_API GroupScript : public ScriptObject virtual void OnDisband(Group* /*group*/) { } }; -// Placed here due to ScriptRegistry::AddScript dependency. -#define sScriptMgr ScriptMgr::instance() // namespace // { @@ -852,12 +850,13 @@ class TC_GAME_API ScriptMgr ScriptMgr(); virtual ~ScriptMgr(); + void FillSpellSummary(); + void LoadDatabase(); + public: /* Initialization */ static ScriptMgr* instance(); void Initialize(); - void LoadDatabase(); - void FillSpellSummary(); const char* ScriptsVersion() const { return "Integrated Trinity Scripts"; } @@ -873,6 +872,12 @@ class TC_GAME_API ScriptMgr _script_loader_callback = script_loader_callback; } + public: /* Script contexts */ + void BeginScriptContext(std::string const& context); + void FinishScriptContext(); + + void ReleaseScriptContext(std::string const& context); + public: /* Unloading */ void Unload(); @@ -1095,10 +1100,13 @@ class TC_GAME_API ScriptMgr void ModifySpellDamageTaken(Unit* target, Unit* attacker, int32& damage); private: - uint32 _scriptCount; ScriptLoaderCallbackType _script_loader_callback; + + std::string _currentContext; }; +#define sScriptMgr ScriptMgr::instance() + #endif |