aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authortreeston <treeston.mmoc@gmail.com>2017-06-12 17:01:47 +0200
committerCarbenium <carbenium@outlook.com>2020-07-16 22:00:29 +0200
commit17a0139b0e121b0d8d0f2a079fcfd49090ea35a4 (patch)
treee977db12ec29882be66f3251fe2d0718671dd01f /src/server/game
parent7df8546d7ef5c31b401f01811186116d9ae402c4 (diff)
- Add new commands .group set assistant, .group set maintank and .group set mainassist to toggle raid member flags.
- Fix 2017_05_29_00_auth.sql to be reapply safe. (cherry picked from commit ac0f76f8c57bba195b773a6a31ade2e8e2318aeb)
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Accounts/RBAC.h8
-rw-r--r--src/server/game/Groups/Group.cpp9
-rw-r--r--src/server/game/Groups/Group.h6
-rw-r--r--src/server/game/Miscellaneous/Language.h5
4 files changed, 18 insertions, 10 deletions
diff --git a/src/server/game/Accounts/RBAC.h b/src/server/game/Accounts/RBAC.h
index 564ceafbf53..a63f4c66a3e 100644
--- a/src/server/game/Accounts/RBAC.h
+++ b/src/server/game/Accounts/RBAC.h
@@ -766,10 +766,10 @@ enum RBACPermissions
RBAC_PERM_COMMAND_GOBJECT_SPAWNGROUP = 858, // reserved for dynamic_spawning
RBAC_PERM_COMMAND_GOBJECT_DESPAWNGROUP = 859, // reserved for dynamic_spawning
RBAC_PERM_COMMAND_LIST_RESPAWNS = 860, // reserved for dynamic_spawning
- RBAC_PERM_COMMAND_GROUP_SET = 861, // reserved
- RBAC_PERM_COMMAND_GROUP_ASSISTANT = 862, // reserved
- RBAC_PERM_COMMAND_GROUP_MAINTANK = 863, // reserved
- RBAC_PERM_COMMAND_GROUP_MAINASSIST = 864, // reserved
+ RBAC_PERM_COMMAND_GROUP_SET = 861,
+ RBAC_PERM_COMMAND_GROUP_ASSISTANT = 862,
+ RBAC_PERM_COMMAND_GROUP_MAINTANK = 863,
+ RBAC_PERM_COMMAND_GROUP_MAINASSIST = 864,
RBAC_PERM_COMMAND_NPC_SHOWLOOT = 865, // reserved
RBAC_PERM_COMMAND_LIST_SPAWNPOINTS = 866, // reserved
RBAC_PERM_COMMAND_RELOAD_QUEST_GREETING_LOCALE = 867, // reserved
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp
index 24f8a2ac541..bf6a23692fe 100644
--- a/src/server/game/Groups/Group.cpp
+++ b/src/server/game/Groups/Group.cpp
@@ -2501,12 +2501,12 @@ ObjectGuid Group::GetMemberGUID(const std::string& name)
return ObjectGuid::Empty;
}
-bool Group::IsAssistant(ObjectGuid guid) const
+uint8 Group::GetMemberFlags(ObjectGuid guid) const
{
member_citerator mslot = _getMemberCSlot(guid);
if (mslot == m_memberSlots.end())
- return false;
- return mslot->flags & MEMBER_FLAG_ASSISTANT;
+ return 0u;
+ return mslot->flags;
}
bool Group::SameSubGroup(ObjectGuid guid1, ObjectGuid guid2) const
@@ -2560,7 +2560,8 @@ void Group::SetGroupMemberFlag(ObjectGuid guid, bool apply, GroupMemberFlags fla
return;
// Do flag specific actions, e.g ensure uniqueness
- switch (flag) {
+ switch (flag)
+ {
case MEMBER_FLAG_MAINASSIST:
RemoveUniqueGroupMemberFlag(MEMBER_FLAG_MAINASSIST); // Remove main assist flag from current if any.
break;
diff --git a/src/server/game/Groups/Group.h b/src/server/game/Groups/Group.h
index b5a6d4dd75e..14ad431f96c 100644
--- a/src/server/game/Groups/Group.h
+++ b/src/server/game/Groups/Group.h
@@ -310,7 +310,11 @@ class TC_GAME_API Group
bool IsMember(ObjectGuid guid) const;
bool IsLeader(ObjectGuid guid) const;
ObjectGuid GetMemberGUID(const std::string& name);
- bool IsAssistant(ObjectGuid guid) const;
+ uint8 GetMemberFlags(ObjectGuid guid) const;
+ bool IsAssistant(ObjectGuid guid) const
+ {
+ return (GetMemberFlags(guid) & MEMBER_FLAG_ASSISTANT) == MEMBER_FLAG_ASSISTANT;
+ }
Player* GetInvited(ObjectGuid guid) const;
Player* GetInvited(const std::string& name) const;
diff --git a/src/server/game/Miscellaneous/Language.h b/src/server/game/Miscellaneous/Language.h
index e6491388c61..4893d46c5d3 100644
--- a/src/server/game/Miscellaneous/Language.h
+++ b/src/server/game/Miscellaneous/Language.h
@@ -928,7 +928,10 @@ enum TrinityStrings
LANG_DISALLOW_TICKETS_CONFIG = 1190,
LANG_BAN_EXISTS = 1191,
LANG_CHANGEACCOUNT_SUCCESS = 1192,
- // Room for more level 3 1193-1198 not used
+ LANG_GROUP_NOT_IN_RAID_GROUP = 1193,
+ LANG_GROUP_ROLE_CHANGED = 1194,
+ LANG_LEADER_CANNOT_BE_ASSISTANT = 1195,
+ // Room for more level 3 1196-1198 not used
// Debug commands
LANG_DEBUG_AREATRIGGER_LEFT = 1999,