From 0f0f38c6d767845ba33d4d5cf533237fe1e575dd Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 9 Jan 2009 11:36:50 -0600 Subject: [PATCH] *Fix a bug that melee weapon spells deal too much damage. --HG-- branch : trunk --- src/game/Spell.cpp | 3 --- src/game/SpellEffects.cpp | 7 +++++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index e9e79cb159..88b8b0e722 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -5404,9 +5404,6 @@ int32 Spell::CalculateDamageDone(Unit *unit, const uint32 effectMask, float *mul if(m_damage > 0) { - if(m_originalCaster) - m_damage = m_originalCaster->SpellDamageBonus(unit, m_spellInfo, m_damage, SPELL_DIRECT_DAMAGE); - if(IsAreaEffectTarget[m_spellInfo->EffectImplicitTargetA[i]] || IsAreaEffectTarget[m_spellInfo->EffectImplicitTargetB[i]]) { if(int32 reducedPct = unit->GetMaxNegativeAuraModifier(SPELL_AURA_MOD_AOE_DAMAGE_AVOIDANCE)) diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 33cdd32554..187ecf5eb6 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -597,8 +597,11 @@ void Spell::SpellDamageSchoolDmg(uint32 effect_idx) } } - if(damage >= 0) - m_damage+= damage; + if(m_originalCaster) + damage = m_originalCaster->SpellDamageBonus(unitTarget, m_spellInfo, damage, SPELL_DIRECT_DAMAGE); + + if(damage > 0) + m_damage += damage; } }