aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Spells/SpellEffects.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index f92369e8256..ad908cc26ec 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)
- {
- 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);
+ // Judgements
+ else switch (m_spellInfo->Id)
+ {
+ 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;
}