aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKeader <keader.android@gmail.com>2020-04-18 12:53:06 -0300
committerGitHub <noreply@github.com>2020-04-18 17:53:06 +0200
commitc41ae890693676c25cf58f448da9a914fcb9aaf1 (patch)
treec6120db408608d2da6dd7d0f130336ef0a4bc7e0 /src
parent5e15406278a8deeed422c4e0c149db066a737e15 (diff)
Core/Spells: Fixed Ice Block / Divine Shield cast in Cyclone (#24465)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Spell.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index ff52652452f..11cbc12ca16 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -6110,6 +6110,8 @@ SpellCastResult Spell::CheckCasterAuras(uint32* 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;