diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index a3677cd78..52c24c545 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -1320,12 +1320,6 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u } case SMART_ACTION_SET_IN_COMBAT_WITH_ZONE: { - if (mScriptType == SMART_SCRIPT_TYPE_GAMEOBJECT) - { - sLog->outErrorDb("SMART_ACTION_SET_IN_COMBAT_WITH_ZONE (38) is not allowed with SMART_SCRIPT_TYPE_GAMEOBJECT (1), skipped."); - break; - } - ObjectList* targets = GetTargets(e, unit); if (!targets) break; diff --git a/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp b/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp index 03f7700e8..234d16b64 100644 --- a/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp +++ b/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp @@ -1125,6 +1125,15 @@ bool SmartAIMgr::IsEventValid(SmartScriptHolder& e) } break; } + case SMART_ACTION_SET_IN_COMBAT_WITH_ZONE: + { + if (e.GetScriptType() == SMART_SCRIPT_TYPE_GAMEOBJECT) + { + sLog->outErrorDb("SmartScript: action_type %u is not allowed with source_type %u. Entry %u, skipped.", e.GetActionType(), e.GetScriptType(), e.entryOrGuid); + return false; + } + break; + } case SMART_ACTION_START_CLOSEST_WAYPOINT: case SMART_ACTION_FOLLOW: case SMART_ACTION_SET_ORIENTATION: @@ -1133,7 +1142,6 @@ bool SmartAIMgr::IsEventValid(SmartScriptHolder& e) case SMART_ACTION_FLEE_FOR_ASSIST: case SMART_ACTION_COMBAT_STOP: case SMART_ACTION_DIE: - case SMART_ACTION_SET_IN_COMBAT_WITH_ZONE: case SMART_ACTION_SET_ACTIVE: case SMART_ACTION_WP_RESUME: case SMART_ACTION_KILL_UNIT: