diff options
| -rw-r--r-- | src/server/game/Spells/Spell.cpp | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 23ebb5314ff..f0e999141f1 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -2569,6 +2569,11 @@ SpellMissInfo Spell::DoSpellHitOnUnit(Unit* unit, uint32 effectMask)      if (!unit || !effectMask)          return SPELL_MISS_EVADE; +    // Target may have begun evading between launch and hit phases - re-check now +    if (Creature* creatureTarget = unit->ToCreature()) +        if (creatureTarget->IsEvadingAttacks()) +            return SPELL_MISS_EVADE; +      // For delayed spells immunity may be applied between missile launch and hit - check immunity for that case      if (m_spellInfo->HasHitDelay() && unit->IsImmunedToSpell(m_spellInfo, m_caster))          return SPELL_MISS_IMMUNE;  | 
