aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.cpp
diff options
context:
space:
mode:
authorn0n4m3 <none@none>2009-12-20 18:02:57 +0100
committern0n4m3 <none@none>2009-12-20 18:02:57 +0100
commit9f40c92fb410a837fd9f46e0103cf375081578ea (patch)
tree6dffab70e54974e3a992949cb41f1da701b9a0c9 /src/game/SpellMgr.cpp
parentcc19e731742420615bc7c68144b100b07298fad0 (diff)
Restore patch: No Fly Zone using Spell
--HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r--src/game/SpellMgr.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 5600f1d2bf2..8ad22c4b3cd 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -3044,6 +3044,21 @@ bool SpellArea::IsFitToRequirements(Player const* player, uint32 newZone, uint32
return !player->HasAura(-auraSpell);
}
+ // Extra conditions
+ switch(spellId)
+ {
+ case 58600: // No fly Zone - Dalaran (Krasus Landing exception)
+ if (!player || player->GetAreaId() == 4564 || !player->HasAuraType(SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED) && !player->HasAuraType(SPELL_AURA_FLY)
+ || player->HasAura(44795))
+ return false;
+ break;
+ case 58730: // No fly Zone - Wintergrasp
+ if (!player || !player->HasAuraType(SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED) && !player->HasAuraType(SPELL_AURA_FLY)
+ || player->HasAura(45472) || player->HasAura(44795))
+ return false;
+ break;
+ }
+
return true;
}