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)
|
||||||
{
|
{
|
||||||
if (group->RemoveMember(guid) <= 1)
|
if (group->RemoveMember(guid, method) <= 1)
|
||||||
{
|
{
|
||||||
// group->Disband(); already disbanded in RemoveMember
|
// group->Disband(); already disbanded in RemoveMember
|
||||||
sObjectMgr.RemoveGroup(group);
|
sObjectMgr.RemoveGroup(group);
|
||||||
|
|||||||
@@ -1708,7 +1708,7 @@ class Player : public Unit, public GridObject<Player>
|
|||||||
bool IsInSameGroupWith(Player const* p) const;
|
bool IsInSameGroupWith(Player const* p) const;
|
||||||
bool IsInSameRaidWith(Player const* p) const { return p == this || (GetGroup() != NULL && GetGroup() == p->GetGroup()); }
|
bool IsInSameRaidWith(Player const* p) const { return p == this || (GetGroup() != NULL && GetGroup() == p->GetGroup()); }
|
||||||
void UninviteFromGroup();
|
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 RemoveFromGroup() { RemoveFromGroup(GetGroup(),GetGUID()); }
|
||||||
void SendUpdateToOutOfRangeGroupMembers();
|
void SendUpdateToOutOfRangeGroupMembers();
|
||||||
|
|
||||||
|
|||||||
@@ -293,7 +293,7 @@ void WorldSession::HandleGroupUninviteGuidOpcode(WorldPacket & recv_data)
|
|||||||
if (grp->isLFGGroup())
|
if (grp->isLFGGroup())
|
||||||
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), reason);
|
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), reason);
|
||||||
else
|
else
|
||||||
Player::RemoveFromGroup(grp,guid);
|
Player::RemoveFromGroup(grp, guid, GROUP_REMOVEMETHOD_KICK);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -338,7 +338,7 @@ void WorldSession::HandleGroupUninviteOpcode(WorldPacket & recv_data)
|
|||||||
if (grp->isLFGGroup())
|
if (grp->isLFGGroup())
|
||||||
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), "");
|
sLFGMgr.InitBoot(grp, GUID_LOPART(GetPlayer()->GetGUID()), GUID_LOPART(guid), "");
|
||||||
else
|
else
|
||||||
Player::RemoveFromGroup(grp,guid);
|
Player::RemoveFromGroup(grp, guid, GROUP_REMOVEMETHOD_KICK);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user