diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index f92369e825..ad908cc26e 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -733,19 +733,21 @@ void Spell::SpellDamageSchoolDmg(uint32 effect_idx) { damage += int32(m_caster->GetShieldBlockValue() * 1.3f); } - // Judgement of Righteousness - else if (m_spellInfo->Id == 20187) + // Judgements + else switch (m_spellInfo->Id) { - float ap = m_caster->GetTotalAttackPowerValue(BASE_ATTACK); - float sp = (float)m_caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellInfo)); - damage += int32(0.2f*ap + 0.32f*sp); - } - // Judgement of Wisdom, Light, Justice - else if (m_spellInfo->Id == 54158) - { - float ap = m_caster->GetTotalAttackPowerValue(BASE_ATTACK); - float sp = (float)m_caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellInfo)); - damage += int32(0.14f*ap + 0.22f*sp); + case 20187: + case 54158: + case 31804: + float attackPower = m_caster->GetTotalAttackPowerValue(BASE_ATTACK); + float spellPower = (float)(m_caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellInfo))); + if (m_spellInfo->Id == 20187) // Judgement of Righteousness + damage += int32(0.2f * attackPower + 0.32f * spellPower); + if (m_spellInfo->Id == 54158) // Judgement of Wisdom, Light, Justice + damage += int32(0.16f * attackPower + 0.25f * spellPower); + if (m_spellInfo->Id == 31804) // Judgement of Vengeance + damage += int32(0.14f * attackPower + 0.22f * spellPower); + break; } break; }