Multiline edit everywhere (#15216)

This commit is contained in:
Morb
2023-04-14 12:57:47 -07:00
committed by GitHub
parent b3ed09a3db
commit 2eb2ded7f3
12 changed files with 73 additions and 37 deletions

View File

@@ -39,6 +39,7 @@ namespace Content.Server.Communications
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
private const int MaxMessageLength = 256;
private const int MaxMessageNewlines = 2;
private const float UIUpdateInterval = 5.0f;
public override void Initialize()
@@ -223,7 +224,21 @@ namespace Content.Server.Communications
private void OnAnnounceMessage(EntityUid uid, CommunicationsConsoleComponent comp,
CommunicationsConsoleAnnounceMessage message)
{
var msg = message.Message.Length <= MaxMessageLength ? message.Message.Trim() : $"{message.Message.Trim().Substring(0, MaxMessageLength)}...";
var msgChars = (message.Message.Length <= MaxMessageLength ? message.Message.Trim() : $"{message.Message.Trim().Substring(0, MaxMessageLength)}...").ToCharArray();
var newlines = 0;
for (var i = 0; i < msgChars.Length; i++)
{
if (msgChars[i] != '\n')
continue;
if (newlines >= MaxMessageNewlines)
msgChars[i] = ' ';
newlines++;
}
var msg = new string(msgChars);
var author = Loc.GetString("comms-console-announcement-unknown-sender");
if (message.Session.AttachedEntity is {Valid: true} mob)
{