aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Unit.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 35b45c2750e..2e966eb53cc 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -4673,8 +4673,13 @@ void Unit::RemoveAura(AuraMap::iterator &i, AuraRemoveMode mode)
{
// 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;
+ if (AurSpellInfo->EffectApplyAuraName[Aur->GetEffIndex()]!=SPELL_AURA_PERIODIC_DUMMY
+ && AurSpellInfo->EffectApplyAuraName[Aur->GetEffIndex()]!= SPELL_AURA_DUMMY)
+ //don't stop channeling of scripted spells (this is actually a hack)
+ {
+ caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->cancel(false);
+ channeled = true;
+ }
}
}
}