Added Hook

* This hook can be used to cache module database tables.
This commit is contained in:
talamortis
2018-07-18 13:12:30 +01:00
parent 8767372ebf
commit a5a130b95a
3 changed files with 13 additions and 0 deletions

View File

@@ -482,6 +482,12 @@ void ScriptMgr::OnOpenStateChange(bool open)
FOREACH_SCRIPT(WorldScript)->OnOpenStateChange(open);
}
void ScriptMgr::OnLoadCustomDatabeTable()
{
FOREACH_SCRIPT(WorldScript)->OnLoadCustomDatabeTable();
}
void ScriptMgr::OnBeforeConfigLoad(bool reload)
{
#ifdef ELUNA

View File

@@ -245,6 +245,9 @@ class WorldScript : public ScriptObject
// Called after the world configuration is (re)loaded.
virtual void OnAfterConfigLoad(bool /*reload*/) { }
// Called when loading custom database tables
virtual void OnLoadCustomDatabeTable() { }
// Called before the world configuration is (re)loaded.
virtual void OnBeforeConfigLoad(bool /*reload*/) { }
@@ -1132,6 +1135,7 @@ class ScriptMgr
public: /* WorldScript */
void OnLoadCustomDatabeTable();
void OnOpenStateChange(bool open);
void OnBeforeConfigLoad(bool reload);
void OnAfterConfigLoad(bool reload);

View File

@@ -1355,6 +1355,9 @@ void World::SetInitialWorldSettings()
stmt->setUInt32(0, 3 * DAY);
CharacterDatabase.Execute(stmt);
///- Custom Hook for loading DB items
sScriptMgr->OnLoadCustomDatabeTable();
///- Load the DBC files
sLog->outString("Initialize data stores...");
LoadDBCStores(m_dataPath);