diff options
author | QAston <none@none> | 2009-05-06 18:33:19 +0200 |
---|---|---|
committer | QAston <none@none> | 2009-05-06 18:33:19 +0200 |
commit | ef2c40875028eca6a938a3f5d486fdddceeb71a7 (patch) | |
tree | 9c75873e7932a7aa870cc34ac1d3dd0a25966b87 | |
parent | 9de6139a3940c9107e347278a539603d94816409 (diff) |
*Move shockwave bonus ap damage to SpellDamageSchoolDmg from dummy effect, because the effect has incorrect target data.
--HG--
branch : trunk
-rw-r--r-- | src/game/SpellEffects.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 3915d61d876..d6196468972 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -413,6 +413,14 @@ void Spell::SpellDamageSchoolDmg(uint32 effect_idx) // Heroic Throw ${$m1+$AP*.50} else if(m_spellInfo->SpellFamilyFlags[1] & 0x00000001) damage+= uint32(m_caster->GetTotalAttackPowerValue(BASE_ATTACK) * 0.5f); + // Shockwave ${$m3/100*$AP} + else if(m_spellInfo->SpellFamilyFlags[1] & 0x00008000) + { + int32 pct = m_caster->CalculateSpellDamage(m_spellInfo, 2, m_spellInfo->EffectBasePoints[2], unitTarget); + if (pct > 0) + damage+= int32(m_caster->GetTotalAttackPowerValue(BASE_ATTACK) * pct / 100); + break; + } // Thunder Clap else if(m_spellInfo->SpellFamilyFlags[0] & 0x80) { @@ -1394,12 +1402,6 @@ void Spell::EffectDummy(uint32 i) m_damage+= uint32(damage * m_caster->GetTotalAttackPowerValue(BASE_ATTACK) / 100); return; } - // Shockwave - if(m_spellInfo->SpellFamilyFlags[1] & 0x8000) - { - m_damage+= uint32(damage * m_caster->GetTotalAttackPowerValue(BASE_ATTACK) / 100); - return; - } switch(m_spellInfo->Id) { // Warrior's Wrath |