diff options
author | Shauren <none@none> | 2010-08-10 19:40:35 +0200 |
---|---|---|
committer | Shauren <none@none> | 2010-08-10 19:40:35 +0200 |
commit | 36d1405b524e9aa397ff6e1d5f48f24711766f11 (patch) | |
tree | 417f42e7b4f5cb3a7d0a5b02287ab98658010b57 /src | |
parent | 4f9ec558f41c3eeb1a5279fd7cc4dfbaedfaab4c (diff) |
Fixed bug allowing players to enter instance even if selected difficulty was disabled
Added map id to log when player tries to enter disabled map
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Conditions/DisableMgr.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Conditions/DisableMgr.cpp b/src/server/game/Conditions/DisableMgr.cpp index 505f76469f7..9de97269f68 100644 --- a/src/server/game/Conditions/DisableMgr.cpp +++ b/src/server/game/Conditions/DisableMgr.cpp @@ -238,7 +238,9 @@ bool DisableMgr::IsDisabledFor(DisableType type, uint32 entry, Unit const* pUnit if (mapEntry->IsDungeon()) { uint8 disabledModes = itr->second; - switch(mapEntry->IsRaid() ? pPlayer->GetRaidDifficulty() : pPlayer->GetDungeonDifficulty()) + Difficulty targetDifficulty = pPlayer->GetDifficulty(mapEntry->IsRaid()); + GetDownscaledMapDifficultyData(entry, targetDifficulty); + switch(targetDifficulty) { case DUNGEON_DIFFICULTY_NORMAL: return disabledModes & DUNGEON_STATUSFLAG_NORMAL; diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 6ba33bb1517..f477d96ef8f 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1812,7 +1812,8 @@ bool Player::TeleportTo(uint32 mapid, float x, float y, float z, float orientati if ((GetSession()->GetSecurity() < SEC_GAMEMASTER) && sDisableMgr.IsDisabledFor(DISABLE_TYPE_MAP, mapid, this)) { - sLog.outError("Player %s tried to enter a forbidden map", GetName()); + sLog.outError("Player %s tried to enter a forbidden map %u", GetName(), mapid); + SendTransferAborted(mapid, TRANSFER_ABORT_MAP_NOT_ALLOWED); return false; } |