diff --git a/Content.Server/Atmos/Monitor/Systems/AtmosAlarmableSystem.cs b/Content.Server/Atmos/Monitor/Systems/AtmosAlarmableSystem.cs index 3237f1f9e8..05efccbb01 100644 --- a/Content.Server/Atmos/Monitor/Systems/AtmosAlarmableSystem.cs +++ b/Content.Server/Atmos/Monitor/Systems/AtmosAlarmableSystem.cs @@ -109,8 +109,6 @@ namespace Content.Server.Atmos.Monitor.Systems Reset(uid, component); break; case SyncAlerts: - // Synchronize alerts, but only if they're already known by this monitor. - // This should help eliminate the chain effect, especially with if (!args.Data.TryGetValue(SyncAlerts, out IReadOnlyDictionary? alarms)) { @@ -119,7 +117,7 @@ namespace Content.Server.Atmos.Monitor.Systems foreach (var (key, alarm) in alarms) { - if (component.NetworkAlarmStates.ContainsKey(key)) + if (!component.NetworkAlarmStates.TryAdd(key, alarm)) { component.NetworkAlarmStates[key] = alarm; } diff --git a/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml b/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml index 963423c2bf..0f5d607e5b 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml @@ -7,7 +7,7 @@ - type: AtmosAlarmable syncWith: - FireAlarm - - AirSensor + - AirAlarm - type: ApcPowerReceiver - type: ExtensionCableReceiver - type: DeviceNetwork