diff --git a/src/server/game/AI/CoreAI/TotemAI.cpp b/src/server/game/AI/CoreAI/TotemAI.cpp index d12232f27..9df6fbb7c 100644 --- a/src/server/game/AI/CoreAI/TotemAI.cpp +++ b/src/server/game/AI/CoreAI/TotemAI.cpp @@ -60,8 +60,23 @@ void TotemAI::UpdateAI(uint32 /*diff*/) if (me->ToTotem()->GetTotemType() != TOTEM_ACTIVE) return; - if (!me->IsAlive() || me->IsNonMeleeSpellCast(false)) + if (!me->IsAlive()) + { return; + } + + if (me->IsNonMeleeSpellCast(false)) + { + if (Unit* victim = ObjectAccessor::GetUnit(*me, i_victimGuid)) + { + if (!victim || !victim->IsAlive()) + { + me->InterruptNonMeleeSpells(false); + } + } + + return; + } // Search spell SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(me->ToTotem()->GetSpell());