diff options
| author | QAston <none@none> | 2009-01-21 20:24:21 +0100 |
|---|---|---|
| committer | QAston <none@none> | 2009-01-21 20:24:21 +0100 |
| commit | e0b527be8ac4723a14b2cd5623aa511681f11775 (patch) | |
| tree | 18b9d291a92158775deccc72c0acd395b99aeb78 /src | |
| parent | 1f6bff8120bfbc0577960825d7c8389aaaa803a0 (diff) | |
*Fix rain of fire.
--HG--
branch : trunk
Diffstat (limited to 'src')
| -rw-r--r-- | src/game/Unit.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 813d7783243..d46d77f8703 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -4660,8 +4660,13 @@ void Unit::RemoveAura(AuraMap::iterator &i, AuraRemoveMode mode) //prevent recurential call && caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->getState() != SPELL_STATE_FINISHED) { - caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->cancel(false); - channeled = true; + if (caster==this || !IsAreaOfEffectSpell(AurSpellInfo)) + { + // remove auras only for non-aoe spells or when chanelled aura is removed + // because aoe spells don't require aura on target to continue + caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->cancel(false); + channeled = true; + } } } } |
