diff --git a/Content.Client/UserInterface/RichText/ScrambleTag.cs b/Content.Client/UserInterface/RichText/ScrambleTag.cs index 77b7b25145..a93af993ca 100644 --- a/Content.Client/UserInterface/RichText/ScrambleTag.cs +++ b/Content.Client/UserInterface/RichText/ScrambleTag.cs @@ -14,6 +14,8 @@ public sealed class ScrambleTag : IMarkupTag { [Dependency] private readonly IGameTiming _timing = default!; + private const int MaxScrambleLength = 32; + public string Name => "scramble"; public string TextBefore(MarkupNode node) @@ -29,8 +31,9 @@ public sealed class ScrambleTag : IMarkupTag var seed = (int) (_timing.CurTime.TotalMilliseconds / rate); var rand = new Random(seed + node.GetHashCode()); var charOptions = chars.ToCharArray(); + var realLength = MathF.Min(length.Value, MaxScrambleLength); var sb = new StringBuilder(); - for (var i = 0; i < length; i++) + for (var i = 0; i < realLength; i++) { var index = rand.Next() % charOptions.Length; sb.Append(charOptions[index]);