diff options
author | Rushor <PBienati@web.de> | 2016-02-07 11:14:51 +0100 |
---|---|---|
committer | Rushor <PBienati@web.de> | 2016-02-07 14:05:16 +0100 |
commit | 644b9dcd59252e677639ccca6fb4048ee6e4bf44 (patch) | |
tree | d64327b297f04a885dec2f5152e7ff9d96fa3f52 /src | |
parent | fe2a0fda4464effeb2fb655da84a0460328b1aeb (diff) |
DB/Quest: King of the Foulweald - Improve Questevent
* closes #2381
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Kalimdor/zone_ashenvale.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/server/scripts/Kalimdor/zone_ashenvale.cpp b/src/server/scripts/Kalimdor/zone_ashenvale.cpp index 52a83c02a8a..50730507b8f 100644 --- a/src/server/scripts/Kalimdor/zone_ashenvale.cpp +++ b/src/server/scripts/Kalimdor/zone_ashenvale.cpp @@ -31,6 +31,7 @@ EndContentData */ #include "ScriptedCreature.h" #include "ScriptedEscortAI.h" #include "Player.h" +#include "SpellScript.h" /*#### # npc_ruul_snowhoof @@ -344,9 +345,42 @@ class go_naga_brazier : public GameObjectScript } }; +enum KingoftheFoulwealdMisc +{ + GO_BANNER = 178205 +}; + +class spell_destroy_karangs_banner : public SpellScriptLoader +{ + public: + spell_destroy_karangs_banner() : SpellScriptLoader("spell_destroy_karangs_banner") { } + + class spell_destroy_karangs_banner_SpellScript : public SpellScript + { + PrepareSpellScript(spell_destroy_karangs_banner_SpellScript); + + void HandleAfterCast() + { + if (GameObject* banner = GetCaster()->FindNearestGameObject(GO_BANNER, GetSpellInfo()->GetMaxRange(true))) + banner->Delete(); + } + + void Register() override + { + AfterCast += SpellCastFn(spell_destroy_karangs_banner_SpellScript::HandleAfterCast); + } + }; + + SpellScript* GetSpellScript() const override + { + return new spell_destroy_karangs_banner_SpellScript(); + } +}; + void AddSC_ashenvale() { new npc_ruul_snowhoof(); new npc_muglash(); new go_naga_brazier(); + new spell_destroy_karangs_banner(); } |