diff options
-rw-r--r-- | src/server/game/DungeonFinding/LFGMgr.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Handlers/LFGHandler.cpp | 5 | ||||
-rw-r--r-- | src/server/game/World/World.cpp | 3 | ||||
-rw-r--r-- | src/server/game/World/World.h | 1 | ||||
-rw-r--r-- | src/server/worldserver/worldserver.conf.dist | 5 |
5 files changed, 15 insertions, 1 deletions
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 19d43d709f4..9fadbd03065 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -75,7 +75,7 @@ LFGMgr::~LFGMgr() void LFGMgr::Update(uint32 diff) { - if (!m_update) + if (!m_update || !sWorld.getConfig(CONFIG_DUNGEON_FINDER_ENABLE)) return; m_update = false; diff --git a/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp b/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp index e22c777e15b..fad5131b33f 100644 --- a/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp @@ -25,6 +25,11 @@ void WorldSession::HandleLfgJoinOpcode(WorldPacket &recv_data) { sLog.outDebug("CMSG_LFG_JOIN"); + if (!sWorld.getConfig(CONFIG_DUNGEON_FINDER_ENABLE)) + { + recv_data.rpos(recv_data.wpos()); + return; + } uint8 numDungeons; uint32 dungeon; diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp index 2f4ae9a5a30..dc2cac088a8 100644 --- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -1220,6 +1220,9 @@ void World::LoadConfigSettings(bool reload) m_configs[CONFIG_CHATLOG_ADDON] = sConfig.GetBoolDefault("ChatLogs.Addon", false); m_configs[CONFIG_CHATLOG_BGROUND] = sConfig.GetBoolDefault("ChatLogs.Battleground", false); + // Dungeon finder + m_configs[CONFIG_DUNGEON_FINDER_ENABLE] = sConfig.GetBoolDefault("DungeonFinder.Enable", false); + sScriptMgr.OnConfigLoad(reload); } diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h index 43a3f827063..817e8253fe8 100644 --- a/src/server/game/World/World.h +++ b/src/server/game/World/World.h @@ -285,6 +285,7 @@ enum WorldConfigs CONFIG_CHARDELETE_METHOD, CONFIG_CHARDELETE_MIN_LEVEL, CONFIG_CLEAN_CHARACTER_DB, + CONFIG_DUNGEON_FINDER_ENABLE, CONFIG_VALUE_COUNT }; diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist index 60a3fcfeadf..90a520529cc 100644 --- a/src/server/worldserver/worldserver.conf.dist +++ b/src/server/worldserver/worldserver.conf.dist @@ -1974,6 +1974,10 @@ CharDelete.KeepDays = 30 # The required level of character to be able to send and receive mail # Default: 1 (From level 1) # +# DungeonFinder.Enable +# Enable Dungeon Finder system. Will enable dungeon finder and raid finder +# Default: 0 - off +# 1 - on ############################################################################### PlayerStart.AllReputation = 0 @@ -1996,3 +2000,4 @@ LevelReq.Trade = 1 LevelReq.Ticket = 1 LevelReq.Auction = 1 LevelReq.Mail = 1 +DungeonFinder.Enable = 0
\ No newline at end of file |