diff options
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index b79dd8a49a8..656865a5ccc 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -6404,6 +6404,8 @@ SpellCastResult Spell::CheckCasterAuras(int32* param1) const } else if (!CheckSpellCancelsStun(param1)) result = SPELL_FAILED_STUNNED; + else if ((m_spellInfo->Mechanic & MECHANIC_IMMUNE_SHIELD) && m_caster->ToUnit() && m_caster->ToUnit()->HasAuraWithMechanic(1 << MECHANIC_BANISH)) + result = SPELL_FAILED_STUNNED; } else if (unitflag & UNIT_FLAG_SILENCED && m_spellInfo->PreventionType & SPELL_PREVENTION_TYPE_SILENCE && !CheckSpellCancelsSilence(param1)) result = SPELL_FAILED_SILENCED; |