diff options
| author | DanVS <33371360+DanVS@users.noreply.github.com> | 2019-01-05 00:54:33 +0000 |
|---|---|---|
| committer | Aokromes <Aokromes@users.noreply.github.com> | 2019-01-05 01:54:33 +0100 |
| commit | 8051ff13dfcf3819b58adfcec1608c08dcbcd080 (patch) | |
| tree | eb9748ef4fcee4b45c6c419f4137d26f3c244d23 /src/server/scripts/Pet | |
| parent | 030f5d54d015f42a09c731c81135ab791b528f1c (diff) | |
Core/Scripts: Move some spells to scripts (#22332)
Diffstat (limited to 'src/server/scripts/Pet')
| -rw-r--r-- | src/server/scripts/Pet/pet_dk.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/server/scripts/Pet/pet_dk.cpp b/src/server/scripts/Pet/pet_dk.cpp index 5a59c324e92..751abdf9924 100644 --- a/src/server/scripts/Pet/pet_dk.cpp +++ b/src/server/scripts/Pet/pet_dk.cpp @@ -26,6 +26,7 @@ #include "GridNotifiersImpl.h" #include "MotionMaster.h" #include "ScriptedCreature.h" +#include "SpellScript.h" enum DeathKnightSpells { @@ -136,8 +137,31 @@ class npc_pet_dk_guardian : public CreatureScript } }; +class spell_pet_dk_gargoyle_strike : public SpellScript +{ + PrepareSpellScript(spell_pet_dk_gargoyle_strike); + + void HandleDamageCalc(SpellEffIndex /*effIndex*/) + { + int32 damage = 60; + if (Unit* caster = GetCaster()) + { + if (caster->getLevel() >= 60) + damage += (caster->getLevel() - 60) * 4; + } + + SetHitDamage(damage); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_pet_dk_gargoyle_strike::HandleDamageCalc, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE); + } +}; + void AddSC_deathknight_pet_scripts() { new npc_pet_dk_ebon_gargoyle(); new npc_pet_dk_guardian(); + RegisterSpellScript(spell_pet_dk_gargoyle_strike); } |
