From 3fea857143199f077df2a652e353f1b9336ac076 Mon Sep 17 00:00:00 2001 From: blinkysc <37940565+blinkysc@users.noreply.github.com> Date: Mon, 9 Mar 2026 13:31:23 -0500 Subject: [PATCH] fix(Core/Scripts): Mirror Image should stop attacking invisible targets (#25027) Co-authored-by: blinkysc --- src/server/scripts/Pet/pet_mage.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/server/scripts/Pet/pet_mage.cpp b/src/server/scripts/Pet/pet_mage.cpp index 54677e472..ce9be114f 100644 --- a/src/server/scripts/Pet/pet_mage.cpp +++ b/src/server/scripts/Pet/pet_mage.cpp @@ -171,7 +171,7 @@ struct npc_pet_mage_mirror_image : CasterAI { Unit* selection = owner->ToPlayer()->GetSelectedUnit(); - if (selection) + if (selection && me->CanSeeOrDetect(selection)) { me->GetThreatMgr().ResetAllThreat(); me->AddThreat(selection, 1000000.0f); @@ -208,10 +208,10 @@ struct npc_pet_mage_mirror_image : CasterAI if (checktarget >= 1000) { - if (me->GetVictim()->HasBreakableByDamageCrowdControlAura() || !me->GetVictim()->IsAlive()) + if (!me->GetVictim()->IsAlive() || me->GetVictim()->HasBreakableByDamageCrowdControlAura() || !me->CanSeeOrDetect(me->GetVictim())) { MySelectNextTarget(); - me->InterruptNonMeleeSpells(true); // Stop casting if target is CC or not Alive. + me->InterruptNonMeleeSpells(true); return; } }