fix(Core/CreatureAI): Skip creatures in evade mode for DoZoneInCombat (#2599)

This commit is contained in:
Stoabrogga
2020-02-14 08:06:58 +01:00
committed by GitHub
parent 30fa1ae3b4
commit dcb714a5ef

View File

@@ -36,7 +36,7 @@ void CreatureAI::DoZoneInCombat(Creature* creature /*= NULL*/, float maxRangeToN
if (!creature) if (!creature)
creature = me; creature = me;
if (!creature->CanHaveThreatList()) if (!creature->CanHaveThreatList() || creature->IsInEvadeMode())
return; return;
Map* map = creature->GetMap(); Map* map = creature->GetMap();
@@ -46,8 +46,7 @@ void CreatureAI::DoZoneInCombat(Creature* creature /*= NULL*/, float maxRangeToN
return; return;
} }
// Xinef: Skip creatures in evade mode if (!creature->HasReactState(REACT_PASSIVE) && !creature->GetVictim())
if (!creature->HasReactState(REACT_PASSIVE) && !creature->GetVictim() && !creature->IsInEvadeMode())
{ {
if (Unit* nearTarget = creature->SelectNearestTarget(maxRangeToNearestTarget)) if (Unit* nearTarget = creature->SelectNearestTarget(maxRangeToNearestTarget))
creature->AI()->AttackStart(nearTarget); creature->AI()->AttackStart(nearTarget);