diff options
Diffstat (limited to 'src/server/game/DungeonFinding/LFGScripts.cpp')
-rw-r--r-- | src/server/game/DungeonFinding/LFGScripts.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/game/DungeonFinding/LFGScripts.cpp b/src/server/game/DungeonFinding/LFGScripts.cpp index 401cf6598ac..e1ccf312e74 100644 --- a/src/server/game/DungeonFinding/LFGScripts.cpp +++ b/src/server/game/DungeonFinding/LFGScripts.cpp @@ -27,6 +27,7 @@ #include "Map.h" #include "ObjectAccessor.h" #include "Player.h" +#include "QueryPackets.h" #include "ScriptMgr.h" #include "SharedDefines.h" #include "WorldSession.h" @@ -92,9 +93,11 @@ void LFGPlayerScript::OnMapChanged(Player* player) return; } - for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next()) - if (Player* member = itr->GetSource()) - player->GetSession()->SendNameQueryOpcode(member->GetGUID()); + WorldPackets::Query::QueryPlayerNameResponse response; + for (Group::MemberSlot const& memberSlot : group->GetMemberSlots()) + player->GetSession()->BuildNameQueryData(memberSlot.guid, response.Players.emplace_back()); + + player->SendDirectMessage(response.Write()); if (sLFGMgr->selectedRandomLfgDungeon(player->GetGUID())) player->CastSpell(player, LFG_SPELL_LUCK_OF_THE_DRAW, true); |