diff --git a/Content.Server/Chat/Managers/ChatManager.cs b/Content.Server/Chat/Managers/ChatManager.cs index f8eedd5404..c62a10ada3 100644 --- a/Content.Server/Chat/Managers/ChatManager.cs +++ b/Content.Server/Chat/Managers/ChatManager.cs @@ -201,8 +201,23 @@ internal sealed partial class ChatManager : IChatManager public void SendHookAdmin(string sender, string message) { + var clients = _adminManager.ActiveAdmins.Select(p => p.Channel); + var wrappedMessage = Loc.GetString("chat-manager-send-hook-admin-wrap-message", ("senderName", sender), ("message", FormattedMessage.EscapeText(message))); - ChatMessageToAll(ChatChannel.AdminChat, message, wrappedMessage, source: EntityUid.Invalid, hideChat: false, recordReplay: false); + foreach (var client in clients) + { + ChatMessageToOne( + ChatChannel.AdminChat, + message, + wrappedMessage, + source: EntityUid.Invalid, + hideChat: false, + client: client, + recordReplay: false, + audioPath: _netConfigManager.GetClientCVar(client, CCVars.AdminChatSoundPath), + audioVolume: _netConfigManager.GetClientCVar(client, CCVars.AdminChatSoundVolume)); + } + _adminLogger.Add(LogType.Chat, LogImpact.Low, $"Hook admin from {sender}: {message}"); }