From 3b1ed434aeacfa57f392387c2176dfb4438b13f8 Mon Sep 17 00:00:00 2001 From: DanVS <33371360+DanVS@users.noreply.github.com> Date: Sat, 5 Jan 2019 00:54:33 +0000 Subject: Core/Scripts: Move some spells to scripts (#22332) (cherry picked from commit 8051ff13dfcf3819b58adfcec1608c08dcbcd080) --- src/server/scripts/Spells/spell_generic.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/server/scripts/Spells') diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 48fdc440b97..411040c3394 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -201,6 +201,27 @@ class spell_gen_animal_blood : public AuraScript } }; +class spell_gen_arcane_charge : public SpellScript +{ + PrepareSpellScript(spell_gen_arcane_charge); + + SpellCastResult CheckRequirement() + { + if (Unit* target = GetExplTargetUnit()) + { + if (!(target->GetCreatureTypeMask() & CREATURE_TYPEMASK_DEMON_OR_UNDEAD)) + return SPELL_FAILED_DONT_REPORT; + } + + return SPELL_CAST_OK; + } + + void Register() override + { + OnCheckCast += SpellCheckCastFn(spell_gen_arcane_charge::CheckRequirement); + } +}; + // 430 Drink // 431 Drink // 432 Drink @@ -4231,6 +4252,7 @@ void AddSC_generic_spell_scripts() RegisterAuraScript(spell_gen_adaptive_warding); RegisterSpellScript(spell_gen_allow_cast_from_item_only); RegisterAuraScript(spell_gen_animal_blood); + RegisterSpellScript(spell_gen_arcane_charge); RegisterAuraScript(spell_gen_arena_drink); RegisterAuraScript(spell_gen_aura_of_anger); RegisterAuraScript(spell_gen_aura_of_fear); -- cgit v1.2.3