From 52d4c43bcfdbb6689121489dd0addc16a6d82612 Mon Sep 17 00:00:00 2001 From: UltraNix <80540499+UltraNix@users.noreply.github.com> Date: Thu, 9 Dec 2021 12:11:58 +0100 Subject: [PATCH] fix(Core/Spells): Damage spell modifiers do not affect wands. (#9418) Fixes #9130 --- src/server/game/Spells/SpellEffects.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 0ccae8133..b29e12205 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -3613,7 +3613,7 @@ void Spell::EffectWeaponDmg(SpellEffIndex effIndex) break; } - if (m_spellInfo->SchoolMask & SPELL_SCHOOL_MASK_NORMAL) + if (m_spellSchoolMask & SPELL_SCHOOL_MASK_NORMAL) { float weapon_total_pct = m_caster->GetModifierValue(unitMod, TOTAL_PCT); fixed_bonus = int32(fixed_bonus * weapon_total_pct); @@ -3628,8 +3628,14 @@ void Spell::EffectWeaponDmg(SpellEffIndex effIndex) if (Unit* owner = m_caster->GetOwner()) weaponDamage = owner->CalculateDamage(m_attackType, normalized, true); } + else if (m_spellInfo->Id == 5019) // Wands + { + weaponDamage = m_caster->CalculateDamage(m_attackType, true, false); + } else + { weaponDamage = m_caster->CalculateDamage(m_attackType, normalized, true); + } // Sequence is important for (int j = 0; j < MAX_SPELL_EFFECTS; ++j)