aboutsummaryrefslogtreecommitdiff
path: root/src/game/GroupHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/GroupHandler.cpp')
-rw-r--r--src/game/GroupHandler.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/game/GroupHandler.cpp b/src/game/GroupHandler.cpp
index cd58b30042c..f973bc24722 100644
--- a/src/game/GroupHandler.cpp
+++ b/src/game/GroupHandler.cpp
@@ -32,6 +32,7 @@
#include "Util.h"
#include "SpellAuras.h"
#include "Vehicle.h"
+#include "LFG.h"
class Aura;
@@ -176,6 +177,8 @@ void WorldSession::HandleGroupInviteOpcode(WorldPacket & recv_data)
data << uint32(0); // unk
player->GetSession()->SendPacket(&data);
+ SendLfgUpdatePlayer(LFG_UPDATETYPE_REMOVED_FROM_QUEUE);
+ SendLfgUpdateParty(LFG_UPDATETYPE_REMOVED_FROM_QUEUE);
SendPartyResult(PARTY_OP_INVITE, membername, ERR_PARTY_RESULT_OK);
}
@@ -218,6 +221,14 @@ void WorldSession::HandleGroupAcceptOpcode(WorldPacket & /*recv_data*/)
if (!group->AddMember(GetPlayer()->GetGUID(), GetPlayer()->GetName()))
return;
+ SendLfgUpdatePlayer(LFG_UPDATETYPE_REMOVED_FROM_QUEUE);
+ for (GroupReference *itr = group->GetFirstMember(); itr != NULL; itr = itr->next())
+ if (Player *plrg = itr->getSource())
+ {
+ plrg->GetSession()->SendLfgUpdatePlayer(LFG_UPDATETYPE_CLEAR_LOCK_LIST);
+ plrg->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_CLEAR_LOCK_LIST);
+ }
+
group->BroadcastGroupUpdate();
}