From 3193a5ba5adde3870d736c3386d6ee50e422167f Mon Sep 17 00:00:00 2001 From: Dan <83884799+elthehablo@users.noreply.github.com> Date: Fri, 3 Jan 2025 23:01:54 +0100 Subject: [PATCH] fix(Scripts/ZulAman): make Zul'Jin p3 cyclones go to random targets (#21087) --- .../scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp b/src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp index 95de6bc40..59b0686d1 100644 --- a/src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp +++ b/src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp @@ -381,6 +381,8 @@ struct npc_zuljin_vortex : public ScriptedAI me->SetSpeed(MOVE_RUN, 1.0f); me->SetUnitFlag(UNIT_FLAG_NOT_SELECTABLE); DoZoneInCombat(); + // Start attacking random target + ChangeToNewPlayer(); } void SpellHit(Unit* caster, SpellInfo const* spell) override @@ -389,13 +391,22 @@ struct npc_zuljin_vortex : public ScriptedAI DoCast(caster, SPELL_ZAP_DAMAGE, true); } + void ChangeToNewPlayer() + { + DoResetThreatList(); + if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 0.0f, true)) + { + me->AddThreat(target, 10000000.0f); + } + } + void UpdateAI(uint32 /*diff*/) override { UpdateVictim(); //if the vortex reach the target, it change his target to another player if (me->IsWithinMeleeRange(me->GetVictim())) - AttackStart(SelectTarget(SelectTargetMethod::Random, 0)); + ChangeToNewPlayer(); } };