diff options
author | Ovahlord <dreadkiller@gmx.de> | 2024-12-20 21:22:34 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-12-20 21:23:39 +0100 |
commit | 2ddc37e26543eb6920aa755df09674ebc6b4cd14 (patch) | |
tree | 74bb99a00ada24f6bd8fd42756f506ef611dc171 /src/server/scripts | |
parent | a2925358f00a41b601b53f7ea62ee10a9b75fc45 (diff) |
Scripts/Spells: fixed damage calculations for Icy Touch and Frost Fever
Diffstat (limited to 'src/server/scripts')
-rw-r--r-- | src/server/scripts/Spells/spell_dk.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index 44f09092508..dbe0511fbd9 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -236,10 +236,41 @@ private: bool _healTarget = false; }; +// 45477 - Icy Touch +class spell_dk_icy_touch : public SpellScript +{ + void CalculateDamage(Unit* /*victim*/, int32& damage, int32& /*flatMod*/, float& /*pctMod*/) + { + damage += GetCaster()->GetTotalAttackPowerValue(BASE_ATTACK) * 0.2f; + } + + void Register() override + { + CalcDamage += SpellCalcDamageFn(spell_dk_icy_touch::CalculateDamage); + } +}; + +// 55095 - Frost Fever +class spell_dk_frost_fever : public AuraScript +{ + // According to tooltip: ($m1*1.15+$AP*0.055*1.15) + void CalculateDamage(AuraEffect const* /*aurEff*/, Unit* /*victim*/, int32& damage, int32& /*flatMod*/, float& /*pctMod*/) + { + damage = damage * 1.15f + GetCaster()->GetTotalAttackPowerValue(BASE_ATTACK) * 0.055f * 1.15f; + } + + void Register() override + { + DoEffectCalcDamageAndHealing += AuraEffectCalcDamageFn(spell_dk_frost_fever::CalculateDamage, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE); + } +}; + void AddSC_deathknight_spell_scripts() { RegisterSpellScript(spell_dk_dark_simulacrum); RegisterSpellScript(spell_dk_dark_simulacrum_buff); RegisterSpellScript(spell_dk_death_coil); + RegisterSpellScript(spell_dk_frost_fever); + RegisterSpellScript(spell_dk_icy_touch); RegisterSpellScript(spell_dk_runic_empowerment); } |