[Script/ICC] Properly fix Dark Nucleus aggro problems and them not following you when they should.

Closes #6589
Fix by @Marosa. Guidelines by @Kandera.
This commit is contained in:
Exodius
2012-07-06 22:28:03 +02:00
parent 9eab1a23cf
commit 27a59f3390
@@ -1296,7 +1296,7 @@ class npc_dark_nucleus : public CreatureScript
void Reset()
{
me->SetReactState(REACT_PASSIVE);
me->SetReactState(REACT_DEFENSIVE);
me->CastSpell(me, SPELL_SHADOW_RESONANCE_AURA, true);
}
@@ -1315,15 +1315,12 @@ class npc_dark_nucleus : public CreatureScript
void MoveInLineOfSight(Unit* who)
{
if (me->GetDistance(who) >= 15.0f)
return;
ScriptedAI::MoveInLineOfSight(who);
}
void DamageTaken(Unit* attacker, uint32& /*damage*/)
{
if (attacker == me || attacker == me->getVictim())
if (attacker == me)
return;
me->DeleteThreatList();
@@ -1345,6 +1342,8 @@ class npc_dark_nucleus : public CreatureScript
DoCast(victim, SPELL_SHADOW_RESONANCE_RESIST);
me->ClearUnitState(UNIT_STATE_CASTING);
}
else
MoveInLineOfSight(me->getVictim());
}
else
_targetAuraCheck -= diff;