From: Samuka <47865393+Samuka-C@users.noreply.github.com> Date: Sun, 30 Nov 2025 03:09:50 +0000 (-0300) Subject: Make xenoborg round end text better (#41623) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=b58a7f69a2302f42751931725b41edbde30a29b9;p=space-station-14.git Make xenoborg round end text better (#41623) * make xenoborg win color easier to read * display the max number of xenoborgs and the number of crew alive in the end * make it a datafield * add : (literally) * add period * make text better --- diff --git a/Content.Server/GameTicking/Rules/Components/XenoborgsRuleComponent.cs b/Content.Server/GameTicking/Rules/Components/XenoborgsRuleComponent.cs index 742890226f..c7496bb0fb 100644 --- a/Content.Server/GameTicking/Rules/Components/XenoborgsRuleComponent.cs +++ b/Content.Server/GameTicking/Rules/Components/XenoborgsRuleComponent.cs @@ -25,6 +25,12 @@ public sealed partial class XenoborgsRuleComponent : Component [DataField] public float XenoborgShuttleCallPercentage = 0.7f; + /// + /// The most xenoborgs that existed at one point. + /// + [DataField] + public int MaxNumberXenoborgs = 0; + /// /// If the announcment of the death of the mothership core was sent /// diff --git a/Content.Server/GameTicking/Rules/XenoborgsRuleSystem.cs b/Content.Server/GameTicking/Rules/XenoborgsRuleSystem.cs index 94b6315a6b..97a6efb471 100644 --- a/Content.Server/GameTicking/Rules/XenoborgsRuleSystem.cs +++ b/Content.Server/GameTicking/Rules/XenoborgsRuleSystem.cs @@ -75,7 +75,12 @@ public sealed class XenoborgsRuleSystem : GameRuleSystem else if (numXenoborgs == 0) args.AddLine(Loc.GetString("xenoborgs-cond-all-xenoborgs-dead-core-alive")); else - args.AddLine(Loc.GetString("xenoborgs-cond-xenoborgs-alive", ("count", numXenoborgs))); + { + args.AddLine(Loc.GetString("xenoborg-number-xenoborg-alive-end", ("count", numXenoborgs))); + args.AddLine(Loc.GetString("xenoborg-number-crew-alive-end", ("count", numHumans))); + } + + args.AddLine(Loc.GetString("xenoborg-max-number", ("count", component.MaxNumberXenoborgs))); args.AddLine(Loc.GetString("xenoborgs-list-start")); @@ -93,6 +98,8 @@ public sealed class XenoborgsRuleSystem : GameRuleSystem var numXenoborgs = GetNumberXenoborgs(); var numHumans = _mindSystem.GetAliveHumans().Count; + xenoborgsRuleComponent.MaxNumberXenoborgs = Math.Max(xenoborgsRuleComponent.MaxNumberXenoborgs, numXenoborgs); + if ((float)numXenoborgs / (numHumans + numXenoborgs) > xenoborgsRuleComponent.XenoborgShuttleCallPercentage) { foreach (var station in _station.GetStations()) diff --git a/Resources/Locale/en-US/game-ticking/game-presets/preset-xenoborgs.ftl b/Resources/Locale/en-US/game-ticking/game-presets/preset-xenoborgs.ftl index 9ded853d56..111aba947a 100644 --- a/Resources/Locale/en-US/game-ticking/game-presets/preset-xenoborgs.ftl +++ b/Resources/Locale/en-US/game-ticking/game-presets/preset-xenoborgs.ftl @@ -7,18 +7,19 @@ mothership-welcome = You're the mothership core. Guide the xenoborgs so they can xenoborg-shuttle-call = We have detected that Xenoborgs have overtaken the station. Dispatching an emergency shuttle to collect remaining personnel. -xenoborgs-borgsmajor = [color=blue]Xenoborg major victory![/color] -xenoborgs-borgsminor = [color=blue]Xenoborg minor victory![/color] +xenoborgs-borgsmajor = [color=deepskyblue]Xenoborg major victory![/color] +xenoborgs-borgsminor = [color=deepskyblue]Xenoborg minor victory![/color] xenoborgs-neutral = [color=white]Neutral outcome![/color] xenoborgs-crewminor = [color=yellow]Crew minor victory![/color] xenoborgs-crewmajor = [color=yellow]Crew major victory![/color] xenoborgs-cond-all-xenoborgs-dead-core-alive = All xenoborgs were destroyed. The mothership core remains adrift in space. xenoborgs-cond-all-xenoborgs-dead-core-dead = The mothership core was destroyed and there are no xenoborgs left. -xenoborgs-cond-xenoborgs-alive = {$count -> - [one] Only one xenoborg survived. - *[other] There were {$count} xenoborgs in the end. -} + +xenoborg-number-xenoborg-alive-end = Number of xenoborgs alive: {$count} +xenoborg-number-crew-alive-end = Number of crew alive: {$count} + +xenoborg-max-number = The highest number of xenoborgs was: {$count} xenoborgs-list-start = The starting xenoborg team were: xenoborgs-list = - [color=White]{$name}[/color] ([color=gray]{$user}[/color])