aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/LFGHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/LFGHandler.cpp')
-rw-r--r--src/server/game/Handlers/LFGHandler.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/server/game/Handlers/LFGHandler.cpp b/src/server/game/Handlers/LFGHandler.cpp
index ca8cafb8592..a5b73520dea 100644
--- a/src/server/game/Handlers/LFGHandler.cpp
+++ b/src/server/game/Handlers/LFGHandler.cpp
@@ -196,11 +196,20 @@ void WorldSession::HandleLfgTeleportOpcode(WorldPacket& recvData)
sLFGMgr->TeleportPlayer(GetPlayer(), out, true);
}
-void WorldSession::HandleLfgPlayerLockInfoRequestOpcode(WorldPacket& /*recvData*/)
+void WorldSession::HandleLfgGetLockInfoOpcode(WorldPacket& recvData)
+{
+ bool forPlayer = recvData.ReadBit();
+ TC_LOG_DEBUG(LOG_FILTER_LFG, "CMSG_LFG_LOCK_INFO_REQUEST %s for %s", GetPlayerInfo().c_str(), (forPlayer ? "player" : "party"));
+
+ if (forPlayer)
+ SendLfgPlayerLockInfo();
+ else
+ SendLfgPartyLockInfo();
+}
+
+void WorldSession::SendLfgPlayerLockInfo()
{
uint64 guid = GetPlayer()->GetGUID();
- TC_LOG_DEBUG(LOG_FILTER_LFG, "CMSG_LFG_PLAYER_LOCK_INFO_REQUEST %s",
- GetPlayerInfo().c_str());
// Get Random dungeons that can be done at a certain level and expansion
uint8 level = GetPlayer()->getLevel();
@@ -291,11 +300,9 @@ void WorldSession::HandleLfgPlayerLockInfoRequestOpcode(WorldPacket& /*recvData*
SendPacket(&data);
}
-void WorldSession::HandleLfgPartyLockInfoRequestOpcode(WorldPacket& /*recvData*/)
+void WorldSession::SendLfgPartyLockInfo()
{
uint64 guid = GetPlayer()->GetGUID();
- TC_LOG_DEBUG(LOG_FILTER_LFG, "CMSG_LFG_PARTY_LOCK_INFO_REQUEST %s", GetPlayerInfo().c_str());
-
Group* group = GetPlayer()->GetGroup();
if (!group)
return;