From 3e29ae1ee8ed410127fe37e47d4e904b57436dfe Mon Sep 17 00:00:00 2001 From: Spp Date: Fri, 13 Aug 2010 15:38:10 +0200 Subject: Dungeon Finder: Add vote kick support --HG-- branch : trunk --- src/server/game/Server/Protocol/Handlers/GroupHandler.cpp | 11 +++++++++-- src/server/game/Server/Protocol/Handlers/LFGHandler.cpp | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'src/server/game/Server') diff --git a/src/server/game/Server/Protocol/Handlers/GroupHandler.cpp b/src/server/game/Server/Protocol/Handlers/GroupHandler.cpp index 7b8fae749e1..838ebb40f4f 100644 --- a/src/server/game/Server/Protocol/Handlers/GroupHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/GroupHandler.cpp @@ -32,6 +32,7 @@ #include "Util.h" #include "SpellAuras.h" #include "Vehicle.h" +#include "LFGMgr.h" class Aura; @@ -289,7 +290,10 @@ void WorldSession::HandleGroupUninviteGuidOpcode(WorldPacket & recv_data) if (grp->IsMember(guid)) { - Player::RemoveFromGroup(grp,guid); + if (grp->isLFGGroup()) + sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), reason); + else + Player::RemoveFromGroup(grp,guid); return; } @@ -331,7 +335,10 @@ void WorldSession::HandleGroupUninviteOpcode(WorldPacket & recv_data) if (uint64 guid = grp->GetMemberGUID(membername)) { - Player::RemoveFromGroup(grp,guid); + if (grp->isLFGGroup()) + sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), ""); + else + Player::RemoveFromGroup(grp,guid); return; } diff --git a/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp b/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp index b2a91b010fc..85a280152b5 100644 --- a/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/LFGHandler.cpp @@ -150,6 +150,8 @@ void WorldSession::HandleLfgSetBootVoteOpcode(WorldPacket &recv_data) uint8 agree; // Agree to kick player recv_data >> agree; + if (agree < 2) + sLFGMgr.UpdateBoot(GetPlayer(), agree); } void WorldSession::HandleLfgTeleportOpcode(WorldPacket &recv_data) -- cgit v1.2.3