diff options
Diffstat (limited to 'src')
-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 |