aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellInfo.cpp
diff options
context:
space:
mode:
authorclick <click@gonnamakeyou.com>2015-04-07 23:51:19 +0200
committerclick <click@gonnamakeyou.com>2015-04-07 23:51:19 +0200
commit6c1e4bc20d68d9fb548eb4896bd8b84a4c3ec4ff (patch)
tree0e516c48ad83deecd88100d674562af635a06718 /src/server/game/Spells/SpellInfo.cpp
parentb321f84a39c1c790a6519f8c0910f99c60fb536d (diff)
Core/Spells: Reinstate helperfunction removed in commit 0e3607df (with a new functionname to make more sense out of it), and adjust the remaining code slightly to accomodate that.
Diffstat (limited to 'src/server/game/Spells/SpellInfo.cpp')
-rw-r--r--src/server/game/Spells/SpellInfo.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp
index 79db8672a4f..8821ba3db22 100644
--- a/src/server/game/Spells/SpellInfo.cpp
+++ b/src/server/game/Spells/SpellInfo.cpp
@@ -1482,15 +1482,12 @@ SpellCastResult SpellInfo::CheckLocation(uint32 map_id, uint32 zone_id, uint32 a
case SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED:
case SPELL_AURA_FLY:
{
- if (player)
+ SkillLineAbilityMapBounds bounds = sSpellMgr->GetSkillLineAbilityMapBounds(Id);
+ for (SkillLineAbilityMap::const_iterator skillIter = bounds.first; skillIter != bounds.second; ++skillIter)
{
- SkillLineAbilityMapBounds bounds = sSpellMgr->GetSkillLineAbilityMapBounds(Id);
- for (SkillLineAbilityMap::const_iterator skillIter = bounds.first; skillIter != bounds.second; ++skillIter)
- {
- // spell 54197 (Cold Weather Flying) is a prereq for flying in Northrend
- if (skillIter->second->skillId == SKILL_MOUNTS && player->GetMapId() != 571 && !player->HasSpell(54197))
- return SPELL_FAILED_INCORRECT_AREA; // maybe: SPELL_CUSTOM_ERROR_CANT_USE_THAT_MOUNT
- }
+ if (skillIter->second->skillId == SKILL_MOUNTS)
+ if (player && !player->canFlyInZone(map_id, zone_id))
+ return SPELL_FAILED_INCORRECT_AREA;
}
}
}