Scripts/DK: Implemented Howling Blast (#28761)

This commit is contained in:
Ovahlord
2023-01-26 18:38:10 +01:00
committed by GitHub
parent 2a79be02fd
commit 58cd4e58f7
2 changed files with 29 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
-- Howling Blast
DELETE FROM `spell_script_names` WHERE `ScriptName` IN('spell_dk_howling_blast');
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
(49184, 'spell_dk_howling_blast'):

View File

@@ -24,7 +24,9 @@
#include "ScriptMgr.h"
#include "Containers.h"
#include "ObjectMgr.h"
#include "ObjectAccessor.h"
#include "Player.h"
#include "Spell.h"
#include "SpellAuraEffects.h"
#include "SpellHistory.h"
#include "SpellScript.h"
@@ -52,6 +54,7 @@ enum DeathKnightSpells
SPELL_DK_DEATH_STRIKE_OFFHAND = 66188,
SPELL_DK_FESTERING_WOUND = 194310,
SPELL_DK_FROST = 137006,
SPELL_DK_FROST_FEVER = 55095,
SPELL_DK_FROST_SCYTHE = 207230,
SPELL_DK_GLYPH_OF_FOUL_MENAGERIE = 58642,
SPELL_DK_GLYPH_OF_THE_GEIST = 58640,
@@ -636,6 +639,27 @@ class spell_dk_glyph_of_scourge_strike_script : public SpellScript
}
};
// 49184 - Howling Blast
class spell_dk_howling_blast : public SpellScript
{
PrepareSpellScript(spell_dk_howling_blast);
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SPELL_DK_FROST_FEVER });
}
void HandleFrostFever(SpellEffIndex /*effIndex*/)
{
GetCaster()->CastSpell(GetHitUnit(), SPELL_DK_FROST_FEVER);
}
void Register() override
{
OnEffectHitTarget += SpellEffectFn(spell_dk_howling_blast::HandleFrostFever, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE);
}
};
// 206940 - Mark of Blood
class spell_dk_mark_of_blood : public AuraScript
{
@@ -854,6 +878,7 @@ void AddSC_deathknight_spell_scripts()
RegisterSpellScript(spell_dk_festering_strike);
RegisterSpellScript(spell_dk_ghoul_explode);
RegisterSpellScript(spell_dk_glyph_of_scourge_strike_script);
RegisterSpellScript(spell_dk_howling_blast);
RegisterSpellScript(spell_dk_mark_of_blood);
RegisterSpellScript(spell_dk_necrosis);
RegisterSpellScript(spell_dk_pet_geist_transform);