diff options
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r-- | src/game/Unit.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index cb6faf6ee3d..4107dc70b95 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -10738,6 +10738,9 @@ bool Unit::IsImmunedToDamage(SpellSchoolMask shoolMask) bool Unit::IsImmunedToDamage(SpellEntry const* spellInfo) { + if (spellInfo->Attributes & SPELL_ATTR_UNAFFECTED_BY_INVULNERABILITY) + return false; + uint32 shoolMask = GetSpellSchoolMask(spellInfo); if (spellInfo->Id != 42292 && spellInfo->Id !=59752) { @@ -10768,6 +10771,9 @@ bool Unit::IsImmunedToSpell(SpellEntry const* spellInfo) if (itr->type == spellInfo->Id) return true; + if (spellInfo->Attributes & SPELL_ATTR_UNAFFECTED_BY_INVULNERABILITY) + return false; + if (spellInfo->Dispel) { SpellImmuneList const& dispelList = m_spellImmune[IMMUNITY_DISPEL]; |