Communications Console: The ECSining (#8374)

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Veritius
2022-06-03 21:37:35 +10:00
committed by GitHub
parent c6d20e6ccf
commit 237cb3d0b4
33 changed files with 608 additions and 249 deletions

View File

@@ -1,5 +1,6 @@
using Content.Server.Chat.Managers;
using Content.Server.Chat;
using Content.Server.Communications;
using Content.Server.Station.Systems;
using Content.Shared.GameTicking;
using Robust.Shared.Random;
@@ -12,7 +13,8 @@ namespace Content.Server.Nuke
public sealed class NukeCodeSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly IChatManager _chat = default!;
[Dependency] private readonly ChatSystem _chatSystem = default!;
[Dependency] private readonly StationSystem _stationSystem = default!;
private const int CodeLength = 6;
public string Code { get; private set; } = default!;
@@ -73,10 +75,11 @@ namespace Content.Server.Nuke
wasSent = true;
}
// TODO: Allow selecting a station for nuke codes
if (wasSent)
{
var msg = Loc.GetString("nuke-component-announcement-send-codes");
_chat.DispatchStationAnnouncement(msg, colorOverride: Color.Red);
_chatSystem.DispatchGlobalStationAnnouncement(msg, colorOverride: Color.Red);
}
return wasSent;