From 334a6c4162790ef9d2cbb34d8be29170d28fdbd6 Mon Sep 17 00:00:00 2001 From: tartalo Date: Sat, 31 Oct 2009 19:34:02 +0100 Subject: Block access to instances if encounter is in progress only for raids (not for 5 player dungeons). Don't count GMs for instance full block --HG-- branch : trunk --- src/game/MapManager.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/game/MapManager.cpp') diff --git a/src/game/MapManager.cpp b/src/game/MapManager.cpp index 047b9a352b3..135be78310f 100644 --- a/src/game/MapManager.cpp +++ b/src/game/MapManager.cpp @@ -252,7 +252,7 @@ bool MapManager::CanPlayerEnter(uint32 mapid, Player* player) } //Encounters in progress - if (((InstanceMap*)boundedMap)->GetInstanceData() && ((InstanceMap*)boundedMap)->GetInstanceData()->IsEncounterInProgress()) + if (entry->map_type == MAP_RAID && ((InstanceMap*)boundedMap)->GetInstanceData() && ((InstanceMap*)boundedMap)->GetInstanceData()->IsEncounterInProgress()) { sLog.outDebug("MAP: Player '%s' can't enter instance '%s' while an encounter is in progress.", player->GetName(), mapName); player->SendTransferAborted(mapid, TRANSFER_ABORT_ZONE_IN_COMBAT); @@ -263,7 +263,7 @@ bool MapManager::CanPlayerEnter(uint32 mapid, Player* player) int8 maxPlayers = (player->GetDifficulty() == DIFFICULTY_HEROIC) ? instance->maxPlayersHeroic : instance->maxPlayers; if (maxPlayers != -1) //-1: unlimited access { - if (boundedMap->GetPlayers().getSize() >= maxPlayers) + if (boundedMap->GetPlayersCountExceptGMs() >= maxPlayers) { sLog.outDebug("MAP: Player '%s' can't enter instance '%s' because it's full.", player->GetName(), mapName); player->SendTransferAborted(mapid, TRANSFER_ABORT_MAX_PLAYERS); -- cgit v1.2.3