Core/DungeonFinder: disable map only for LFG (#17784)

Core/DungeonFinder: disable map only from looking for dungeon
This commit is contained in:
Aokromes
2016-11-26 02:50:17 +01:00
committed by GitHub
parent 109174146c
commit 46ee3881e6
3 changed files with 7 additions and 2 deletions

View File

@@ -42,7 +42,7 @@ namespace
DisableMap m_DisableMap;
uint8 MAX_DISABLE_TYPES = 8;
uint8 MAX_DISABLE_TYPES = 9;
}
void LoadDisables()
@@ -118,6 +118,7 @@ void LoadDisables()
case DISABLE_TYPE_QUEST:
break;
case DISABLE_TYPE_MAP:
case DISABLE_TYPE_LFG_MAP:
{
MapEntry const* mapEntry = sMapStore.LookupEntry(entry);
if (!mapEntry)
@@ -344,6 +345,7 @@ bool IsDisabledFor(DisableType type, uint32 entry, Unit const* unit, uint8 flags
break;
}
case DISABLE_TYPE_MAP:
case DISABLE_TYPE_LFG_MAP:
if (Player const* player = unit->ToPlayer())
{
MapEntry const* mapEntry = sMapStore.LookupEntry(entry);

View File

@@ -33,7 +33,8 @@ enum DisableType
DISABLE_TYPE_ACHIEVEMENT_CRITERIA = 4,
DISABLE_TYPE_OUTDOORPVP = 5,
DISABLE_TYPE_VMAP = 6,
DISABLE_TYPE_MMAP = 7
DISABLE_TYPE_MMAP = 7,
DISABLE_TYPE_LFG_MAP = 8
};
enum SpellDisableTypes

View File

@@ -1605,6 +1605,8 @@ LfgLockMap const LFGMgr::GetLockedDungeons(ObjectGuid guid)
lockData = LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION;
else if (DisableMgr::IsDisabledFor(DISABLE_TYPE_MAP, dungeon->map, player))
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
else if (DisableMgr::IsDisabledFor(DISABLE_TYPE_LFG_MAP, dungeon->map, player))
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
else if (dungeon->difficulty > DUNGEON_DIFFICULTY_NORMAL && player->GetBoundInstance(dungeon->map, Difficulty(dungeon->difficulty)))
lockData = LFG_LOCKSTATUS_RAID_LOCKED;
else if (dungeon->minlevel > level)