From 4864b800b0ee8175aa5604c5ab22c0f3941f108e Mon Sep 17 00:00:00 2001 From: Victor Godoy <44324742+xDevICCI@users.noreply.github.com> Date: Sat, 31 Jan 2026 13:44:19 -0300 Subject: [PATCH] =?UTF-8?q?fix(Scripts/Naxx):=20Thaddius=20Ball=20Lightnin?= =?UTF-8?q?g=20should=20check=20all=20players=20i=E2=80=A6=20(#24392)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: victor --- .../Northrend/Naxxramas/boss_thaddius.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp index 61c609fe4..f0831da05 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp @@ -129,6 +129,15 @@ public: uint32 resetTimer{}; bool ballLightningEnabled; + bool IsAnyPlayerInMeleeRange() const + { + for (auto const& ref : me->GetThreatMgr().GetThreatList()) + if (Unit* target = ref->getTarget()) + if (target->IsPlayer() && me->IsWithinMeleeRange(target)) + return true; + return false; + } + void DoAction(int32 param) override { if (param == ACTION_SUMMON_DIED) @@ -327,17 +336,11 @@ public: break; } - if (me->IsWithinMeleeRange(me->GetVictim())) - { + if (IsAnyPlayerInMeleeRange()) DoMeleeAttackIfReady(); - } - else if (ballLightningEnabled) - { + else if (ballLightningEnabled && !IsAnyPlayerInMeleeRange()) if (Unit* target = SelectTarget(SelectTargetMethod::MaxThreat)) - { me->CastSpell(target, SPELL_BALL_LIGHTNING, false); - } - } } }; };