aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/3.3.5/2020_03_14_04_world.sql4
-rw-r--r--src/server/scripts/Spells/spell_dk.cpp19
2 files changed, 23 insertions, 0 deletions
diff --git a/sql/updates/world/3.3.5/2020_03_14_04_world.sql b/sql/updates/world/3.3.5/2020_03_14_04_world.sql
new file mode 100644
index 00000000000..12619940a01
--- /dev/null
+++ b/sql/updates/world/3.3.5/2020_03_14_04_world.sql
@@ -0,0 +1,4 @@
+--
+DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_dk_frost_fever';
+INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
+(55095,'spell_dk_frost_fever');
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp
index 7b0100c996d..d6ab0057cd4 100644
--- a/src/server/scripts/Spells/spell_dk.cpp
+++ b/src/server/scripts/Spells/spell_dk.cpp
@@ -1333,6 +1333,24 @@ class spell_dk_hysteria : public AuraScript
}
};
+// 55095 - Frost Fever
+class spell_dk_frost_fever : public AuraScript
+{
+ PrepareAuraScript(spell_dk_frost_fever);
+
+ void HandleDispel(DispelInfo* /*dispelInfo*/)
+ {
+ if (Unit* caster = GetCaster())
+ if (AuraEffect* icyClutch = GetUnitOwner()->GetAuraEffect(SPELL_AURA_MOD_DECREASE_SPEED, SPELLFAMILY_DEATHKNIGHT, 0, 0x00040000, 0, caster->GetGUID()))
+ GetUnitOwner()->RemoveAurasDueToSpell(icyClutch->GetId());
+ }
+
+ void Register() override
+ {
+ AfterDispel += AuraDispelFn(spell_dk_frost_fever::HandleDispel);
+ }
+};
+
// 51209 - Hungering Cold
class spell_dk_hungering_cold : public SpellScriptLoader
{
@@ -3197,6 +3215,7 @@ void AddSC_deathknight_spell_scripts()
new spell_dk_glyph_of_scourge_strike();
RegisterSpellScript(spell_dk_glyph_of_scourge_strike_script);
RegisterAuraScript(spell_dk_hysteria);
+ RegisterAuraScript(spell_dk_frost_fever);
new spell_dk_hungering_cold();
new spell_dk_icebound_fortitude();
new spell_dk_improved_blood_presence();