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); FOREACH_SCRIPT(WorldScript)->OnOpenStateChange(open);
} }
void ScriptMgr::OnLoadCustomDatabeTable()
{
FOREACH_SCRIPT(WorldScript)->OnLoadCustomDatabeTable();
}
void ScriptMgr::OnBeforeConfigLoad(bool reload) void ScriptMgr::OnBeforeConfigLoad(bool reload)
{ {
#ifdef ELUNA #ifdef ELUNA

View File

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

View File

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