aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Battlegrounds/Battleground.cpp2
-rw-r--r--src/server/game/Chat/Commands/Level3.cpp2
-rw-r--r--src/server/game/Entities/Player/Player.cpp2
-rw-r--r--src/server/game/Groups/Group.cpp4
-rw-r--r--src/server/game/Groups/Group.h10
5 files changed, 13 insertions, 7 deletions
diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp
index 7bb11fb36b5..2c2bc1d869d 100644
--- a/src/server/game/Battlegrounds/Battleground.cpp
+++ b/src/server/game/Battlegrounds/Battleground.cpp
@@ -995,7 +995,7 @@ void Battleground::RemovePlayerAtLeave(uint64 guid, bool Transport, bool SendPac
// remove from raid group if player is member
if (Group *group = GetBgRaid(team))
{
- if (!group->RemoveMember(guid, 0)) // group was disbanded
+ if (!group->RemoveMember(guid)) // group was disbanded
{
SetBgRaid(team, NULL);
delete group;
diff --git a/src/server/game/Chat/Commands/Level3.cpp b/src/server/game/Chat/Commands/Level3.cpp
index ae4720dd23f..7b375689653 100644
--- a/src/server/game/Chat/Commands/Level3.cpp
+++ b/src/server/game/Chat/Commands/Level3.cpp
@@ -7386,7 +7386,7 @@ bool ChatHandler::HandleGroupRemoveCommand(const char *args)
if (GetPlayerGroupAndGUIDByName(cname, plr, group, guid, true))
if (group)
- group->RemoveMember(guid, 0);
+ group->RemoveMember(guid);
return true;
}
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 153078442c5..8e2da740eee 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -2598,7 +2598,7 @@ void Player::RemoveFromGroup(Group* group, uint64 guid)
{
if (group)
{
- if (group->RemoveMember(guid, 0) <= 1)
+ if (group->RemoveMember(guid) <= 1)
{
// group->Disband(); already disbanded in RemoveMember
sObjectMgr.RemoveGroup(group);
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp
index a6e69cf3649..6c5b1b5c56e 100644
--- a/src/server/game/Groups/Group.cpp
+++ b/src/server/game/Groups/Group.cpp
@@ -354,7 +354,7 @@ bool Group::AddMember(const uint64 &guid, const char* name)
return true;
}
-uint32 Group::RemoveMember(const uint64 &guid, const uint8 &method)
+uint32 Group::RemoveMember(const uint64 &guid, const RemoveMethod &method)
{
BroadcastGroupUpdate();
@@ -376,7 +376,7 @@ uint32 Group::RemoveMember(const uint64 &guid, const uint8 &method)
WorldPacket data;
- if (method == 1)
+ if (method == GROUP_REMOVEMETHOD_KICK)
{
data.Initialize(SMSG_GROUP_UNINVITE, 0);
player->GetSession()->SendPacket(&data);
diff --git a/src/server/game/Groups/Group.h b/src/server/game/Groups/Group.h
index a3d0ab614b5..9bd570edf14 100644
--- a/src/server/game/Groups/Group.h
+++ b/src/server/game/Groups/Group.h
@@ -116,6 +116,13 @@ enum GroupUpdateFlags
GROUP_UPDATE_FULL = 0x0007FFFF, // all known flags
};
+enum RemoveMethod
+{
+ GROUP_REMOVEMETHOD_DEFAULT = 0,
+ GROUP_REMOVEMETHOD_KICK = 1,
+ GROUP_REMOVEMETHOD_LEAVE = 2,
+};
+
#define GROUP_UPDATE_FLAGS_COUNT 20
// 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,12,13,14,15,16,17,18,19
static const uint8 GroupUpdateLength[GROUP_UPDATE_FLAGS_COUNT] = { 0, 2, 2, 2, 1, 2, 2, 2, 2, 4, 8, 8, 1, 2, 2, 2, 1, 2, 2, 8};
@@ -191,8 +198,7 @@ class Group
void RemoveAllInvites();
bool AddLeaderInvite(Player *player);
bool AddMember(const uint64 &guid, const char* name);
- // method: 0=just remove, 1=kick
- uint32 RemoveMember(const uint64 &guid, const uint8 &method);
+ uint32 RemoveMember(const uint64 &guid, const RemoveMethod &method = GROUP_REMOVEMETHOD_DEFAULT);
void ChangeLeader(const uint64 &guid);
void SetLootMethod(LootMethod method) { m_lootMethod = method; }
void SetLooterGuid(const uint64 &guid) { m_looterGuid = guid; }