From a541a2f18537d32087c855db8fa338b0be5eab03 Mon Sep 17 00:00:00 2001 From: megamage Date: Tue, 5 May 2009 11:32:12 -0500 Subject: *Fix a bug that some spell effects are applied twice. --HG-- branch : trunk --- src/game/Spell.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 5d55e059832..a10c076bcc9 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -775,7 +775,7 @@ void Spell::AddUnitTarget(Unit* pVictim, uint32 effIndex) if(!CheckTarget(pVictim, effIndex)) return; - + // Check for effect immune skip if immuned bool immuned = pVictim->IsImmunedToSpellEffect(m_spellInfo, effIndex); @@ -2643,9 +2643,13 @@ void Spell::_handle_immediate_phase() if(!m_targets.HasDst()) m_targets.setDestination(m_caster); HandleEffects(m_originalCaster, NULL, NULL, j); + m_effectMask |= (1<Effect[j]] == SPELL_REQUIRE_NONE) + { HandleEffects(m_originalCaster, NULL, NULL, j); + m_effectMask |= (1<