diff options
author | ariel- <ariel-@users.noreply.github.com> | 2017-02-28 14:08:25 -0300 |
---|---|---|
committer | ariel- <ariel-@users.noreply.github.com> | 2017-02-28 14:09:25 -0300 |
commit | f302b3d68d2c40a86f0c7be4df9b2fb625ba724f (patch) | |
tree | 62fd9d68ae1c9bb6e710fd459953bc3225411fb4 /src | |
parent | 01168775ca6b2573fdf99e5de1d53691475053dd (diff) |
Core/Scripts: implement Moss Covered Feet
Closes #19022
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Spells/spell_generic.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 9f3a106ee7d..effb3fb9b5c 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -2176,6 +2176,47 @@ 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 + { + if (!sSpellMgr->GetSpellInfo(SPELL_FALL_DOWN)) + return false; + return true; + } + + 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 { SPELL_NETHERBLOOM_POLLEN_1 = 28703 @@ -4501,6 +4542,7 @@ void AddSC_generic_spell_scripts() new spell_gen_mount("spell_celestial_steed", 0, SPELL_CELESTIAL_STEED_60, SPELL_CELESTIAL_STEED_100, SPELL_CELESTIAL_STEED_150, SPELL_CELESTIAL_STEED_280, SPELL_CELESTIAL_STEED_310); new spell_gen_mount("spell_x53_touring_rocket", 0, 0, 0, SPELL_X53_TOURING_ROCKET_150, SPELL_X53_TOURING_ROCKET_280, SPELL_X53_TOURING_ROCKET_310); new spell_gen_mounted_charge(); + new spell_gen_moss_covered_feet(); new spell_gen_netherbloom(); new spell_gen_nightmare_vine(); new spell_gen_obsidian_armor(); |