Core/Scripts: Extended SMART_ACTION_SET_INST_DATA to also set BossStates. (#16739)
Scripts/Dire Maul: Initialize boss states array so it may be called from SmartAI. (Ref #6429)
This commit is contained in:
1 parent
ea24f369fd
commit
4e31162a42
4 files changed
+68
-9
No files matched your search
@@ -19,6 +19,7 @@
|
||||
#include "ObjectMgr.h"
|
||||
#include "GridDefines.h"
|
||||
#include "GridNotifiers.h"
|
||||
#include "InstanceScript.h"
|
||||
#include "SpellMgr.h"
|
||||
#include "Cell.h"
|
||||
#include "GameEventMgr.h"
|
||||
@@ -1193,6 +1194,23 @@ bool SmartAIMgr::IsEventValid(SmartScriptHolder& e)
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SMART_ACTION_SET_INST_DATA:
|
||||
{
|
||||
if (e.action.setInstanceData.type > 1)
|
||||
{
|
||||
TC_LOG_ERROR("sql.sql", "Entry %u SourceType %u Event %u Action %u uses invalid data type %u (value range 0-1), skipped.", e.entryOrGuid, e.GetScriptType(), e.event_id, e.GetActionType(), e.action.setInstanceData.type);
|
||||
return false;
|
||||
}
|
||||
else if (e.action.setInstanceData.type == 1)
|
||||
{
|
||||
if (e.action.setInstanceData.data > TO_BE_DECIDED)
|
||||
{
|
||||
TC_LOG_ERROR("sql.sql", "Entry %u SourceType %u Event %u Action %u uses invalid boss state %u (value range 0-5), skipped.", e.entryOrGuid, e.GetScriptType(), e.event_id, e.GetActionType(), e.action.setInstanceData.data);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SMART_ACTION_START_CLOSEST_WAYPOINT:
|
||||
case SMART_ACTION_FOLLOW:
|
||||
case SMART_ACTION_SET_ORIENTATION:
|
||||
@@ -1210,7 +1228,6 @@ bool SmartAIMgr::IsEventValid(SmartScriptHolder& e)
|
||||
case SMART_ACTION_ATTACK_START:
|
||||
case SMART_ACTION_THREAT_ALL_PCT:
|
||||
case SMART_ACTION_THREAT_SINGLE_PCT:
|
||||
case SMART_ACTION_SET_INST_DATA:
|
||||
case SMART_ACTION_SET_INST_DATA64:
|
||||
case SMART_ACTION_AUTO_ATTACK:
|
||||
case SMART_ACTION_ALLOW_COMBAT_MOVEMENT:
|
||||
|
||||
Reference in new issue
Block a user