aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp6
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];