diff options
author | grsgs <> | 2013-07-28 14:16:17 +0200 |
---|---|---|
committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2013-07-28 14:16:17 +0200 |
commit | 036286cb48adcc21d37c89241f3f67d6049064e4 (patch) | |
tree | 9ad28ca5d050943c623c56ea53356cabc8d61af5 | |
parent | 78975ed263877eef40232f81c32f4ff323331dd3 (diff) |
Core/Spells: Fix absorbs effect from death knight "Necrotic Strike"
Closes #10388
Signed-off-by: Vincent-Michael <Vincent_Michael@gmx.de>
-rw-r--r-- | sql/updates/world/2013_07_28_01_world_spell_script_names_434.sql | 3 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_dk.cpp | 29 |
2 files changed, 32 insertions, 0 deletions
diff --git a/sql/updates/world/2013_07_28_01_world_spell_script_names_434.sql b/sql/updates/world/2013_07_28_01_world_spell_script_names_434.sql new file mode 100644 index 00000000000..890ea5317ce --- /dev/null +++ b/sql/updates/world/2013_07_28_01_world_spell_script_names_434.sql @@ -0,0 +1,3 @@ +DELETE FROM `spell_script_names` WHERE `spell_id`=73975; +INSERT INTO `spell_script_names`(`spell_id`, `ScriptName`) VALUES +(73975,'spell_dk_necrotic_strike'); diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index 282c4b0b733..24a6d40a0de 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -906,6 +906,34 @@ class spell_dk_improved_unholy_presence : public SpellScriptLoader } }; +// 73975 - Necrotic Strike +class spell_dk_necrotic_strike : public SpellScriptLoader +{ + public: + spell_dk_necrotic_strike() : SpellScriptLoader("spell_dk_necrotic_strike") { } + + class spell_dk_necrotic_strike_AuraScript : public AuraScript + { + PrepareAuraScript(spell_dk_necrotic_strike_AuraScript); + + void CalculateAmount(AuraEffect const* /*aurEff*/, int32& amount, bool & /*canBeRecalculated*/) + { + if (Unit* caster = GetCaster()) + amount = int32(caster->GetTotalAttackPowerValue(BASE_ATTACK) * 0.7f); + } + + void Register() + { + DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_dk_necrotic_strike_AuraScript::CalculateAmount, EFFECT_0, SPELL_AURA_SCHOOL_HEAL_ABSORB); + } + }; + + AuraScript* GetAuraScript() const + { + return new spell_dk_necrotic_strike_AuraScript(); + } +}; + // 48266 - Blood Presence // 48263 - Frost Presence // 48265 - Unholy Presence @@ -1227,6 +1255,7 @@ void AddSC_deathknight_spell_scripts() new spell_dk_improved_blood_presence(); new spell_dk_improved_frost_presence(); new spell_dk_improved_unholy_presence(); + new spell_dk_necrotic_strike(); new spell_dk_presence(); new spell_dk_rune_tap_party(); new spell_dk_scent_of_blood(); |