feat(Core/Player): Implement commentator tag (#17449)

* feat(Core/Player): Implement commentator tag

* remove redundant session check
This commit is contained in:
Kitzunu
2023-10-08 09:07:17 +02:00
committed by GitHub
parent 5357a31a01
commit a4e4d6ddb2
4 changed files with 69 additions and 19 deletions

View File

@@ -1294,6 +1294,8 @@ uint8 Player::GetChatTag() const
tag |= CHAT_TAG_DND;
if (isAFK())
tag |= CHAT_TAG_AFK;
if (IsCommentator())
tag |= CHAT_TAG_COM;
if (IsDeveloper())
tag |= CHAT_TAG_DEV;

View File

@@ -839,7 +839,7 @@ enum PlayerChatTag
CHAT_TAG_AFK = 0x01,
CHAT_TAG_DND = 0x02,
CHAT_TAG_GM = 0x04,
CHAT_TAG_COM = 0x08, // Commentator
CHAT_TAG_COM = 0x08, // Commentator tag. Do not exist in clean client
CHAT_TAG_DEV = 0x10,
};
@@ -1139,6 +1139,8 @@ public:
void SendTaxiNodeStatusMultiple();
// mount_id can be used in scripting calls
[[nodiscard]] bool IsCommentator() const { return HasPlayerFlag(PLAYER_FLAGS_COMMENTATOR2); }
void SetCommentator(bool on) { ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_COMMENTATOR2, on); }
[[nodiscard]] bool IsDeveloper() const { return HasPlayerFlag(PLAYER_FLAGS_DEVELOPER); }
void SetDeveloper(bool on) { ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_DEVELOPER, on); }
[[nodiscard]] bool isAcceptWhispers() const { return m_ExtraFlags & PLAYER_EXTRA_ACCEPT_WHISPERS; }