aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/Spell.cpp
diff options
context:
space:
mode:
authorShauren <none@none>2010-06-16 19:36:50 +0200
committerShauren <none@none>2010-06-16 19:36:50 +0200
commit3be48fe4fc11fdaf0cfa6974811d368adab7c74f (patch)
tree991a40b859c346b586b1eb87fee0b1ab87b4a08e /src/server/game/Spells/Spell.cpp
parent560f3bb87b760dc2bb7589586604a01e42441ecf (diff)
Fixed old no-fly zone code to use area flags instead of hardcoded area ids (this fixes flying in Wintergrasp)
This does NOT implement no-fly zones! --HG-- branch : trunk
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
-rw-r--r--src/server/game/Spells/Spell.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index f5c105fa9bf..81b3cde5a53 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -5357,9 +5357,9 @@ SpellCastResult Spell::CheckCast(bool strict)
// allow always ghost flight spells
if (m_originalCaster && m_originalCaster->GetTypeId() == TYPEID_PLAYER && m_originalCaster->isAlive())
{
- // 4197 = Wintergrasp || 4395 = Dalaran && 4564 = Krasus Landing
- if (m_originalCaster->GetZoneId() == 4197 || m_originalCaster->GetZoneId() == 4395 && m_originalCaster->GetAreaId() != 4564)
- return m_IsTriggeredSpell ? SPELL_FAILED_DONT_REPORT : SPELL_FAILED_NOT_HERE;
+ if (AreaTableEntry *const pArea = GetAreaEntryByAreaID(m_originalCaster->GetAreaId()))
+ if (pArea->flags & AREA_FLAG_NO_FLY_ZONE)
+ return m_IsTriggeredSpell ? SPELL_FAILED_DONT_REPORT : SPELL_FAILED_NOT_HERE;
}
break;
}