From e348a64423ac1d9d73e8370333695367f479a719 Mon Sep 17 00:00:00 2001 From: vulppine Date: Tue, 23 Aug 2022 12:04:45 -0700 Subject: [PATCH] air alarm now sends the count of known devices, rather than all types of devices --- .../Atmos/Monitor/Components/AirAlarmComponent.cs | 8 ++++---- Content.Server/Atmos/Monitor/Systems/AirAlarmSystem.cs | 8 +++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Content.Server/Atmos/Monitor/Components/AirAlarmComponent.cs b/Content.Server/Atmos/Monitor/Components/AirAlarmComponent.cs index 3d95b626df..67e18b8f9e 100644 --- a/Content.Server/Atmos/Monitor/Components/AirAlarmComponent.cs +++ b/Content.Server/Atmos/Monitor/Components/AirAlarmComponent.cs @@ -15,10 +15,10 @@ public sealed class AirAlarmComponent : Component [ViewVariables] public AirAlarmTab CurrentTab { get; set; } - public Dictionary DeviceData = new(); - public Dictionary VentData = new(); - public Dictionary ScrubberData = new(); - public Dictionary SensorData = new(); + public readonly HashSet KnownDevices = new(); + public readonly Dictionary VentData = new(); + public readonly Dictionary ScrubberData = new(); + public readonly Dictionary SensorData = new(); public HashSet ActivePlayers = new(); diff --git a/Content.Server/Atmos/Monitor/Systems/AirAlarmSystem.cs b/Content.Server/Atmos/Monitor/Systems/AirAlarmSystem.cs index f204ce1882..4fc027d374 100644 --- a/Content.Server/Atmos/Monitor/Systems/AirAlarmSystem.cs +++ b/Content.Server/Atmos/Monitor/Systems/AirAlarmSystem.cs @@ -182,6 +182,7 @@ public sealed class AirAlarmSystem : EntitySystem { ForceCloseAllInterfaces(uid); component.CurrentModeUpdater = null; + component.KnownDevices.Clear(); component.ScrubberData.Clear(); component.SensorData.Clear(); component.VentData.Clear(); @@ -232,6 +233,7 @@ public sealed class AirAlarmSystem : EntitySystem { if (AccessCheck(uid, args.Session.AttachedEntity, component)) { + component.KnownDevices.Clear(); component.VentData.Clear(); component.ScrubberData.Clear(); component.SensorData.Clear(); @@ -384,8 +386,6 @@ public sealed class AirAlarmSystem : EntitySystem // Save into component. // Sync data to interface. - // _airAlarmDataSystem.UpdateDeviceData(uid, args.SenderAddress, data); - // switch (data) { case GasVentPumpData ventData: @@ -402,6 +402,8 @@ public sealed class AirAlarmSystem : EntitySystem break; } + controller.KnownDevices.Add(args.SenderAddress); + UpdateUI(uid, controller); return; @@ -500,7 +502,7 @@ public sealed class AirAlarmSystem : EntitySystem } } - var deviceCount = alarm.VentData.Count + alarm.ScrubberData.Count + alarm.SensorData.Count; + var deviceCount = alarm.KnownDevices.Count; if (!_atmosAlarmable.TryGetHighestAlert(uid, out var highestAlarm)) {