Dungeon Finder: Add vote kick support

--HG--
branch : trunk
This commit is contained in:
Spp
2010-08-13 15:38:10 +02:00
parent 55705e91d4
commit 3e29ae1ee8
7 changed files with 230 additions and 16 deletions
@@ -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;
}
@@ -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)