Core/Player: Add default remove Method to RemoveFromGroup
--HG-- branch : trunk
This commit is contained in:
@@ -2594,11 +2594,11 @@ void Player::UninviteFromGroup()
|
||||
}
|
||||
}
|
||||
|
||||
void Player::RemoveFromGroup(Group* group, uint64 guid)
|
||||
void Player::RemoveFromGroup(Group* group, uint64 guid, RemoveMethod method /* = GROUP_REMOVEMETHOD_DEFAULT*/)
|
||||
{
|
||||
if (group)
|
||||
{
|
||||
if (group->RemoveMember(guid) <= 1)
|
||||
if (group->RemoveMember(guid, method) <= 1)
|
||||
{
|
||||
// group->Disband(); already disbanded in RemoveMember
|
||||
sObjectMgr.RemoveGroup(group);
|
||||
|
||||
@@ -1708,7 +1708,7 @@ class Player : public Unit, public GridObject<Player>
|
||||
bool IsInSameGroupWith(Player const* p) const;
|
||||
bool IsInSameRaidWith(Player const* p) const { return p == this || (GetGroup() != NULL && GetGroup() == p->GetGroup()); }
|
||||
void UninviteFromGroup();
|
||||
static void RemoveFromGroup(Group* group, uint64 guid);
|
||||
static void RemoveFromGroup(Group* group, uint64 guid, RemoveMethod method = GROUP_REMOVEMETHOD_DEFAULT);
|
||||
void RemoveFromGroup() { RemoveFromGroup(GetGroup(),GetGUID()); }
|
||||
void SendUpdateToOutOfRangeGroupMembers();
|
||||
|
||||
|
||||
@@ -293,7 +293,7 @@ void WorldSession::HandleGroupUninviteGuidOpcode(WorldPacket & recv_data)
|
||||
if (grp->isLFGGroup())
|
||||
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), reason);
|
||||
else
|
||||
Player::RemoveFromGroup(grp,guid);
|
||||
Player::RemoveFromGroup(grp, guid, GROUP_REMOVEMETHOD_KICK);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -338,7 +338,7 @@ void WorldSession::HandleGroupUninviteOpcode(WorldPacket & recv_data)
|
||||
if (grp->isLFGGroup())
|
||||
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), "");
|
||||
else
|
||||
Player::RemoveFromGroup(grp,guid);
|
||||
Player::RemoveFromGroup(grp, guid, GROUP_REMOVEMETHOD_KICK);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user