aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
authorShauren <none@none>2010-08-06 20:09:23 +0200
committerShauren <none@none>2010-08-06 20:09:23 +0200
commit5a345eeade9073fd5c3fd8c1848ab3ebf86ab48a (patch)
tree718644b44d48fb358446e7bb043a1be76ad4a698 /src/server/scripts
parent8a22c601505e1ad30d2cd0b327f85bcfb7ac1716 (diff)
Implemented Dalaran no-fly zone
--HG-- branch : trunk
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/Spells/spell_generic.cpp38
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;
}