From 5934f5371732110df7e200c99c19a360c6abcaf7 Mon Sep 17 00:00:00 2001 From: ariel- Date: Tue, 28 Feb 2017 14:08:25 -0300 Subject: Core/Scripts: implement Moss Covered Feet Closes #19022 (cherrypicked from f302b3d68d2c40a86f0c7be4df9b2fb625ba724f) --- src/server/scripts/Spells/spell_generic.cpp | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'src') diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 8e5e5e633b1..bbf86c4d9be 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -1991,6 +1991,45 @@ class spell_gen_mounted_charge: public SpellScriptLoader } }; +enum MossCoveredFeet +{ + SPELL_FALL_DOWN = 6869 +}; + +// 6870 Moss Covered Feet +// 31399 Moss Covered Feet +class spell_gen_moss_covered_feet : public SpellScriptLoader +{ +public: + spell_gen_moss_covered_feet() : SpellScriptLoader("spell_gen_moss_covered_feet") { } + + class spell_gen_moss_covered_feet_AuraScript : public AuraScript + { + PrepareAuraScript(spell_gen_moss_covered_feet_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_FALL_DOWN }); + } + + void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + eventInfo.GetActionTarget()->CastSpell((Unit*)nullptr, SPELL_FALL_DOWN, true, nullptr, aurEff); + } + + void Register() override + { + OnEffectProc += AuraEffectProcFn(spell_gen_moss_covered_feet_AuraScript::HandleProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_gen_moss_covered_feet_AuraScript(); + } +}; + enum Netherbloom : uint32 { SPELL_NETHERBLOOM_POLLEN_1 = 28703 -- cgit v1.2.3