aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Spell.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 24e70e7aff7..a78f031c310 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -2198,7 +2198,8 @@ void Spell::AddUnitTarget(Unit* target, uint32 effectMask, bool checkIfValid /*=
Unit* unitCaster = ASSERT_NOTNULL(m_caster->ToUnit());
// Calculate reflected spell result on caster
- if (m_spellInfo->CheckTarget(target, unitCaster, implicit) == SPELL_CAST_OK)
+ SpellCastResult castResult = m_spellInfo->CheckTarget(target, unitCaster, implicit);
+ if (castResult == SPELL_CAST_OK || castResult == SPELL_FAILED_TARGET_AURASTATE)
targetInfo.ReflectResult = unitCaster->SpellHitResult(unitCaster, m_spellInfo, false); // can't reflect twice
else
targetInfo.ReflectResult = SPELL_MISS_IMMUNE;