diff options
| -rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 29 | ||||
| -rw-r--r-- | src/server/game/Grids/GridDefines.h | 18 | ||||
| -rwxr-xr-x | src/server/game/Grids/Notifiers/GridNotifiers.cpp | 2 | ||||
| -rwxr-xr-x | src/server/game/Maps/Map.cpp | 7 |
4 files changed, 26 insertions, 30 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index f3f376dae04..5ebfb02f205 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -6790,7 +6790,7 @@ void Player::CheckAreaExploreAndOutdoor() if (sWorld->getBoolConfig(CONFIG_VMAP_INDOOR_CHECK) && !isOutdoor) RemoveAurasWithAttribute(SPELL_ATTR0_OUTDOORS_ONLY); - if (areaFlag==0xffff) + if (areaFlag == 0xffff) return; int offset = areaFlag / 32; @@ -6809,21 +6809,23 @@ void Player::CheckAreaExploreAndOutdoor() GetAchievementMgr().UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_EXPLORE_AREA); - AreaTableEntry const* p = GetAreaEntryByAreaFlagAndMap(areaFlag, GetMapId()); - if (!p) + AreaTableEntry const* areaEntry = GetAreaEntryByAreaFlagAndMap(areaFlag, GetMapId()); + if (!areaEntry) { - sLog->outError("PLAYER: Player %u discovered unknown area (x: %f y: %f map: %u", GetGUIDLow(), GetPositionX(), GetPositionY(), GetMapId()); + sLog->outError("Player %u discovered unknown area (x: %f y: %f z: %f map: %u", GetGUIDLow(), GetPositionX(), GetPositionY(), GetPositionZ(), GetMapId()); + return; } - else if (p->area_level > 0) + + if (areaEntry->area_level > 0) { - uint32 area = p->ID; + uint32 area = areaEntry->ID; if (getLevel() >= sWorld->getIntConfig(CONFIG_MAX_PLAYER_LEVEL)) { SendExplorationExperience(area, 0); } else { - int32 diff = int32(getLevel()) - p->area_level; + int32 diff = int32(getLevel()) - areaEntry->area_level; uint32 XP = 0; if (diff < -5) { @@ -6837,17 +6839,17 @@ void Player::CheckAreaExploreAndOutdoor() else if (exploration_percent < 0) exploration_percent = 0; - XP = uint32(sObjectMgr->GetBaseXP(p->area_level)*exploration_percent/100*sWorld->getRate(RATE_XP_EXPLORE)); + XP = uint32(sObjectMgr->GetBaseXP(areaEntry->area_level)*exploration_percent/100*sWorld->getRate(RATE_XP_EXPLORE)); } else { - XP = uint32(sObjectMgr->GetBaseXP(p->area_level)*sWorld->getRate(RATE_XP_EXPLORE)); + XP = uint32(sObjectMgr->GetBaseXP(areaEntry->area_level)*sWorld->getRate(RATE_XP_EXPLORE)); } GiveXP(XP, NULL); SendExplorationExperience(area, XP); } - sLog->outDetail("PLAYER: Player %u discovered a new area: %u", GetGUIDLow(), area); + sLog->outDetail("Player %u discovered a new area: %u", GetGUIDLow(), area); } } } @@ -21465,13 +21467,6 @@ inline void UpdateVisibilityOf_helper(std::set<uint64>& s64, T* target, std::set } template<> -inline void UpdateVisibilityOf_helper(std::set<uint64>& s64, GameObject* target, std::set<Unit*>& /*v*/) -{ - if (!target->IsTransport()) - s64.insert(target->GetGUID()); -} - -template<> inline void UpdateVisibilityOf_helper(std::set<uint64>& s64, Creature* target, std::set<Unit*>& v) { s64.insert(target->GetGUID()); diff --git a/src/server/game/Grids/GridDefines.h b/src/server/game/Grids/GridDefines.h index d096bb7ab63..7bd0da34a46 100644 --- a/src/server/game/Grids/GridDefines.h +++ b/src/server/game/Grids/GridDefines.h @@ -67,12 +67,12 @@ typedef GridRefManager<Player> PlayerMapType; enum GridMapTypeMask { - GRID_MAP_TYPE_MASK_CORPSE = 0x01, - GRID_MAP_TYPE_MASK_CREATURE = 0x02, - GRID_MAP_TYPE_MASK_DYNAMICOBJECT = 0x04, - GRID_MAP_TYPE_MASK_GAMEOBJECT = 0x08, - GRID_MAP_TYPE_MASK_PLAYER = 0x10, - GRID_MAP_TYPE_MASK_ALL = 0x1F + GRID_MAP_TYPE_MASK_CORPSE = 0x01, + GRID_MAP_TYPE_MASK_CREATURE = 0x02, + GRID_MAP_TYPE_MASK_DYNAMICOBJECT = 0x04, + GRID_MAP_TYPE_MASK_GAMEOBJECT = 0x08, + GRID_MAP_TYPE_MASK_PLAYER = 0x10, + GRID_MAP_TYPE_MASK_ALL = 0x1F }; typedef Grid<Player, AllWorldObjectTypes, AllGridObjectTypes> GridType; @@ -172,14 +172,14 @@ typedef CoordPair<TOTAL_NUMBER_OF_CELLS_PER_MAP> CellCoord; namespace Trinity { template<class RET_TYPE, int CENTER_VAL> - inline RET_TYPE Compute(float x, float y, float center_offset, float size) + inline RET_TYPE Compute(float x, float y, float center_offset, float size) { // calculate and store temporary values in double format for having same result as same mySQL calculations double x_offset = (double(x) - center_offset)/size; double y_offset = (double(y) - center_offset)/size; - int x_val = int(x_offset+CENTER_VAL + 0.5f); - int y_val = int(y_offset+CENTER_VAL + 0.5f); + int x_val = int(x_offset + CENTER_VAL + 0.5f); + int y_val = int(y_offset + CENTER_VAL + 0.5f); return RET_TYPE(x_val, y_val); } diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.cpp b/src/server/game/Grids/Notifiers/GridNotifiers.cpp index 17d3066e64d..a02c18ca008 100755 --- a/src/server/game/Grids/Notifiers/GridNotifiers.cpp +++ b/src/server/game/Grids/Notifiers/GridNotifiers.cpp @@ -120,7 +120,7 @@ inline void CreatureUnitRelocationWorker(Creature* c, Unit* u) void PlayerRelocationNotifier::Visit(PlayerMapType &m) { - for (PlayerMapType::iterator iter=m.begin(); iter != m.end(); ++iter) + for (PlayerMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { Player* player = iter->getSource(); diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index 7403a86a47f..91ebea9f321 100755 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -493,6 +493,7 @@ void Map::VisitNearbyCellsOf(WorldObject* obj, TypeContainerVisitor<Trinity::Obj markCell(cell_id); CellCoord pair(x, y); Cell cell(pair); + cell.SetNoCreate(); Visit(cell, gridVisitor); Visit(cell, worldVisitor); } @@ -509,9 +510,9 @@ void Map::Update(const uint32 t_diff) if (player && player->IsInWorld()) { //player->Update(t_diff); - WorldSession* pSession = player->GetSession(); - MapSessionFilter updater(pSession); - pSession->Update(t_diff, updater); + WorldSession* session = player->GetSession(); + MapSessionFilter updater(session); + session->Update(t_diff, updater); } } /// update active cells around players and active objects |
