diff options
| author | Trazom62 <none@none> | 2010-04-25 22:20:59 +0200 |
|---|---|---|
| committer | Trazom62 <none@none> | 2010-04-25 22:20:59 +0200 |
| commit | edbbec75b13430d817f42e48319c1043c4fcd5d1 (patch) | |
| tree | f63d16e28d3ce9a59f1dd5eb9065b42ba28d864f /src/game/SpellAuraEffects.cpp | |
| parent | 9b83945c33cb4973ca277668a49bae827bf3d469 (diff) | |
Fix channelled spells when player has lot of haste AND a buff reducing spell duration. Thanks dr.tenma.
Fixes issue #1052.
--HG--
branch : trunk
Diffstat (limited to 'src/game/SpellAuraEffects.cpp')
| -rw-r--r-- | src/game/SpellAuraEffects.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/game/SpellAuraEffects.cpp b/src/game/SpellAuraEffects.cpp index df9b1b02214..69bda20fd05 100644 --- a/src/game/SpellAuraEffects.cpp +++ b/src/game/SpellAuraEffects.cpp @@ -756,9 +756,13 @@ void AuraEffect::CalculatePeriodic(Unit * caster, bool create) return; Player* modOwner = caster ? caster->GetSpellModOwner() : NULL; + // Apply casting time mods if (modOwner && m_amplitude) { + // Apply periodic time mod + modOwner->ApplySpellMod(GetId(), SPELLMOD_ACTIVATION_TIME, m_amplitude); + // For channeled spells if (IsChanneledSpell(m_spellProto)) { modOwner->ModSpellCastTime(m_spellProto, m_amplitude); @@ -780,10 +784,6 @@ void AuraEffect::CalculatePeriodic(Unit * caster, bool create) } } - // Apply periodic time mod - if (modOwner && m_amplitude) - modOwner->ApplySpellMod(GetId(), SPELLMOD_ACTIVATION_TIME, m_amplitude); - if (create) { // Start periodic on next tick or at aura apply |
