fix(Scripts/TempleOfAhnQiraj): Replace Sartura's Gaze mechanic with a threat wipe (#13691)
Update boss_sartura.cpp
This commit is contained in:
@@ -105,7 +105,7 @@ struct boss_sartura : public BossAI
|
|||||||
|
|
||||||
void UpdateAI(uint32 diff) override
|
void UpdateAI(uint32 diff) override
|
||||||
{
|
{
|
||||||
if (!UpdateVictimWithGaze())
|
if (!UpdateVictim())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
events.Update(diff);
|
events.Update(diff);
|
||||||
@@ -117,7 +117,8 @@ struct boss_sartura : public BossAI
|
|||||||
case EVENT_SARTURA_WHIRLWIND:
|
case EVENT_SARTURA_WHIRLWIND:
|
||||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 100.0f, true))
|
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 100.0f, true))
|
||||||
{
|
{
|
||||||
SetGazeOn(target);
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
|
me->AddThreat(target, 1000.0f);
|
||||||
}
|
}
|
||||||
DoCastSelf(SPELL_WHIRLWIND);
|
DoCastSelf(SPELL_WHIRLWIND);
|
||||||
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND_RANDOM, 2s, 7s);
|
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND_RANDOM, 2s, 7s);
|
||||||
@@ -126,11 +127,13 @@ struct boss_sartura : public BossAI
|
|||||||
case EVENT_SARTURA_WHIRLWIND_RANDOM:
|
case EVENT_SARTURA_WHIRLWIND_RANDOM:
|
||||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
||||||
{
|
{
|
||||||
SetGazeOn(target);
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
|
me->AddThreat(target, 1000.0f);
|
||||||
}
|
}
|
||||||
events.Repeat(2s, 7s);
|
events.Repeat(2s, 7s);
|
||||||
break;
|
break;
|
||||||
case EVENT_SARTURA_WHIRLWIND_END:
|
case EVENT_SARTURA_WHIRLWIND_END:
|
||||||
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
me->SetReactState(REACT_AGGRESSIVE);
|
me->SetReactState(REACT_AGGRESSIVE);
|
||||||
events.CancelEvent(EVENT_SARTURA_WHIRLWIND_RANDOM);
|
events.CancelEvent(EVENT_SARTURA_WHIRLWIND_RANDOM);
|
||||||
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND, 5s, 11s);
|
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND, 5s, 11s);
|
||||||
@@ -186,7 +189,7 @@ struct npc_sartura_royal_guard : public ScriptedAI
|
|||||||
|
|
||||||
void UpdateAI(uint32 diff) override
|
void UpdateAI(uint32 diff) override
|
||||||
{
|
{
|
||||||
if (!UpdateVictimWithGaze())
|
if (!UpdateVictim())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
events.Update(diff);
|
events.Update(diff);
|
||||||
@@ -198,7 +201,8 @@ struct npc_sartura_royal_guard : public ScriptedAI
|
|||||||
case EVENT_GUARD_WHIRLWIND:
|
case EVENT_GUARD_WHIRLWIND:
|
||||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 100.0f, true))
|
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 100.0f, true))
|
||||||
{
|
{
|
||||||
SetGazeOn(target);
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
|
me->AddThreat(target, 1000.0f);
|
||||||
}
|
}
|
||||||
DoCastSelf(SPELL_GUARD_WHIRLWIND);
|
DoCastSelf(SPELL_GUARD_WHIRLWIND);
|
||||||
events.ScheduleEvent(EVENT_GUARD_WHIRLWIND_RANDOM, 2s, 7s);
|
events.ScheduleEvent(EVENT_GUARD_WHIRLWIND_RANDOM, 2s, 7s);
|
||||||
@@ -207,11 +211,13 @@ struct npc_sartura_royal_guard : public ScriptedAI
|
|||||||
case EVENT_GUARD_WHIRLWIND_RANDOM:
|
case EVENT_GUARD_WHIRLWIND_RANDOM:
|
||||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
||||||
{
|
{
|
||||||
SetGazeOn(target);
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
|
me->AddThreat(target, 1000.0f);
|
||||||
}
|
}
|
||||||
events.Repeat(2s, 7s);
|
events.Repeat(2s, 7s);
|
||||||
break;
|
break;
|
||||||
case EVENT_GUARD_WHIRLWIND_END:
|
case EVENT_GUARD_WHIRLWIND_END:
|
||||||
|
me->GetThreatMgr().ResetAllThreat();
|
||||||
me->SetReactState(REACT_AGGRESSIVE);
|
me->SetReactState(REACT_AGGRESSIVE);
|
||||||
events.CancelEvent(EVENT_GUARD_WHIRLWIND_RANDOM);
|
events.CancelEvent(EVENT_GUARD_WHIRLWIND_RANDOM);
|
||||||
events.ScheduleEvent(EVENT_GUARD_WHIRLWIND, 500ms, 9s);
|
events.ScheduleEvent(EVENT_GUARD_WHIRLWIND, 500ms, 9s);
|
||||||
|
|||||||
Reference in New Issue
Block a user