diff --git a/src/game/ScriptMgr.cpp b/src/game/ScriptMgr.cpp index 9cec55222..76cbdeb66 100644 --- a/src/game/ScriptMgr.cpp +++ b/src/game/ScriptMgr.cpp @@ -606,10 +606,26 @@ void ScriptMgr::LoadEventScripts() // Load all possible script entries from gameobjects for(uint32 i = 1; i < sGOStorage.MaxEntry; ++i) + { if (GameObjectInfo const* goInfo = sGOStorage.LookupEntry(i)) + { if (uint32 eventId = goInfo->GetEventScriptId()) evt_scripts.insert(eventId); + if (goInfo->type == GAMEOBJECT_TYPE_CAPTURE_POINT) + { + evt_scripts.insert(goInfo->capturePoint.neutralEventID1); + evt_scripts.insert(goInfo->capturePoint.neutralEventID2); + evt_scripts.insert(goInfo->capturePoint.contestedEventID1); + evt_scripts.insert(goInfo->capturePoint.contestedEventID2); + evt_scripts.insert(goInfo->capturePoint.progressEventID1); + evt_scripts.insert(goInfo->capturePoint.progressEventID2); + evt_scripts.insert(goInfo->capturePoint.winEventID1); + evt_scripts.insert(goInfo->capturePoint.winEventID2); + } + } + } + // Load all possible script entries from spells for(uint32 i = 1; i < sSpellStore.GetNumRows(); ++i) { @@ -646,7 +662,7 @@ void ScriptMgr::LoadEventScripts() { std::set::const_iterator itr2 = evt_scripts.find(itr->first); if (itr2 == evt_scripts.end()) - sLog.outErrorDb("Table `event_scripts` has script (Id: %u) not referring to any gameobject_template type 10 data2 field, type 3 data6 field, type 13 data 2 field or any spell effect %u or path taxi node data", + sLog.outErrorDb("Table `event_scripts` has script (Id: %u) not referring to any gameobject_template type 10 data2 field, type 3 data6 field, type 13 data 2 field, type 29 or any spell effect %u or path taxi node data", itr->first, SPELL_EFFECT_SEND_EVENT); } } @@ -778,10 +794,26 @@ void ScriptMgr::LoadEventIdScripts() // Load all possible event entries from gameobjects for(uint32 i = 1; i < sGOStorage.MaxEntry; ++i) + { if (GameObjectInfo const* goInfo = sGOStorage.LookupEntry(i)) + { if (uint32 eventId = goInfo->GetEventScriptId()) evt_scripts.insert(eventId); + if (goInfo->type == GAMEOBJECT_TYPE_CAPTURE_POINT) + { + evt_scripts.insert(goInfo->capturePoint.neutralEventID1); + evt_scripts.insert(goInfo->capturePoint.neutralEventID2); + evt_scripts.insert(goInfo->capturePoint.contestedEventID1); + evt_scripts.insert(goInfo->capturePoint.contestedEventID2); + evt_scripts.insert(goInfo->capturePoint.progressEventID1); + evt_scripts.insert(goInfo->capturePoint.progressEventID2); + evt_scripts.insert(goInfo->capturePoint.winEventID1); + evt_scripts.insert(goInfo->capturePoint.winEventID2); + } + } + } + // Load all possible event entries from spells for(uint32 i = 1; i < sSpellStore.GetNumRows(); ++i) { @@ -826,7 +858,7 @@ void ScriptMgr::LoadEventIdScripts() std::set::const_iterator itr = evt_scripts.find(eventId); if (itr == evt_scripts.end()) - sLog.outErrorDb("Table `scripted_event_id` has id %u not referring to any gameobject_template type 10 data2 field, type 3 data6 field, type 13 data 2 field or any spell effect %u or path taxi node data", + sLog.outErrorDb("Table `scripted_event_id` has id %u not referring to any gameobject_template type 10 data2 field, type 3 data6 field, type 13 data 2 field, type 29 or any spell effect %u or path taxi node data", eventId, SPELL_EFFECT_SEND_EVENT); m_EventIdScripts[eventId] = GetScriptId(scriptName); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 98a3f0f9a..12811c716 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "11295" + #define REVISION_NR "11296" #endif // __REVISION_NR_H__