diff options
| author | Shauren <none@none> | 2010-08-06 20:09:23 +0200 |
|---|---|---|
| committer | Shauren <none@none> | 2010-08-06 20:09:23 +0200 |
| commit | 5a345eeade9073fd5c3fd8c1848ab3ebf86ab48a (patch) | |
| tree | 718644b44d48fb358446e7bb043a1be76ad4a698 /src/server/scripts | |
| parent | 8a22c601505e1ad30d2cd0b327f85bcfb7ac1716 (diff) | |
Implemented Dalaran no-fly zone
--HG--
branch : trunk
Diffstat (limited to 'src/server/scripts')
| -rw-r--r-- | src/server/scripts/Spells/spell_generic.cpp | 38 |
1 files changed, 30 insertions, 8 deletions
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 99e43d732b5..313a9b6dbfd 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -24,14 +24,36 @@ #include "ScriptPCH.h" +class spell_gen_remove_flight_auras : public SpellHandlerScript +{ + public: + + spell_gen_remove_flight_auras() : SpellHandlerScript("spell_gen_remove_flight_auras") {} + + class spell_gen_remove_flight_auras_SpellScript : public SpellScript + { + void HandleScript(SpellEffIndex effIndex) + { + Unit *target = GetHitUnit(); + if (!target) + return; + target->RemoveAurasByType(SPELL_AURA_FLY); + target->RemoveAurasByType(SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED); + } + + void Register() + { + EffectHandlers += EffectHandlerFn(spell_gen_remove_flight_auras_SpellScript::HandleScript, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_gen_remove_flight_auras_SpellScript; + } +} + void AddSC_generic_spell_scripts() { - //Script *newscript; - - /* - newscript = new Script; - newscript->Name = "spell_gen_"; - newscript->GetSpellScript = &GetSpellScript_spell_gen_; - newscript->RegisterSelf(); - */ + new spell_gen_remove_flight_auras; } |
