aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Groups/Group.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Groups/Group.cpp')
-rw-r--r--src/server/game/Groups/Group.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp
index f05e465deee..74a26f6a7b8 100644
--- a/src/server/game/Groups/Group.cpp
+++ b/src/server/game/Groups/Group.cpp
@@ -374,10 +374,13 @@ uint32 Group::RemoveMember(const uint64 &guid, const uint8 &method)
if (method == 1)
{
data.Initialize(SMSG_GROUP_UNINVITE, 0);
- player->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_LEADER);
player->GetSession()->SendPacket(&data);
}
+ player->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_LEADER);
+ if (isLFGGroup() && player->GetMap()->IsDungeon())
+ player->TeleportToBGEntryPoint();
+
//we already removed player from group and in player->GetGroup() is his original group!
if (Group* group = player->GetGroup())
{
@@ -448,6 +451,8 @@ void Group::Disband(bool hideDestroy)
else
player->SetGroup(NULL);
+ if (isLFGGroup() && player->GetMap()->IsDungeon())
+ player->TeleportToBGEntryPoint();
player->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_GROUP_DISBAND);
player->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_LEADER);
}