diff options
author | Spp <none@none> | 2010-08-13 09:24:24 +0200 |
---|---|---|
committer | Spp <none@none> | 2010-08-13 09:24:24 +0200 |
commit | 0f378aac24f9999adb8b218c6e080c7d22878d50 (patch) | |
tree | 5d82cb67ad2a9ed8f04153ed90108aaf1bdb9c0c /src/server/game/Groups/Group.cpp | |
parent | 4558ac1d2a8fd3424fd0e4fb890622ccf5a0e14d (diff) |
Dungeon Finder: Fix Teleport issues
- Trying to leave the dungeon using the portal will teleport you back to the save point
- If group is disbanded all people is teleported out
--HG--
branch : trunk
Diffstat (limited to 'src/server/game/Groups/Group.cpp')
-rw-r--r-- | src/server/game/Groups/Group.cpp | 7 |
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); } |