From 6e29ab4fbbb6b0fb0270d73120871ff5336d784f Mon Sep 17 00:00:00 2001 From: megamage Date: Wed, 11 Mar 2009 16:17:37 -0600 Subject: [7440] Use server-side only zone info. Optimize related calles in case zone and subzone use. Author: VladimirMangos This in some cases make some zones not explorable if it not have server side data in current maps but not allow cheating with zone set from client. --HG-- branch : trunk --- src/game/Spell.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/game/Spell.cpp') diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 6c04104d619..7067a55dc01 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -3733,7 +3733,10 @@ uint8 Spell::CanCast(bool strict) return SPELL_FAILED_NOT_IN_ARENA; // zone check - if (uint8 res= spellmgr.GetSpellAllowedInLocationError(m_spellInfo,m_caster->GetMapId(),m_caster->GetZoneId(),m_caster->GetAreaId(), + uint32 zone, area; + m_caster->GetZoneAndAreaId(zone,area); + + if (uint8 res= spellmgr.GetSpellAllowedInLocationError(m_spellInfo,m_caster->GetMapId(),zone,area, m_caster->GetTypeId()==TYPEID_PLAYER ? ((Player*)m_caster) : NULL)) return res; -- cgit v1.2.3