Add interlocking airlocks (#14177)

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Kevin Zheng
2023-05-06 22:49:11 -08:00
committed by GitHub
parent ea5d7d5421
commit 4e5adc2b86
22 changed files with 415 additions and 21 deletions

View File

@@ -1,3 +1,4 @@
using Content.Server.MachineLinking.Events;
using Content.Server.MachineLinking.System;
namespace Content.Server.MachineLinking.Components
@@ -31,6 +32,13 @@ namespace Content.Server.MachineLinking.Components
[ViewVariables(VVAccess.ReadWrite)]
public float TransmissionRange = 30f;
/*
* Remember last output state to avoid re-raising a SignalChangedEvent if the signal
* level hasn't actually changed.
*/
[ViewVariables(VVAccess.ReadWrite)]
public SignalState LastState = SignalState.Low;
[DataField("outputs")]
[Access(typeof(SignalLinkerSystem), Other = AccessPermissions.ReadExecute)] // FIXME Friends
public Dictionary<string, List<PortIdentifier>> Outputs = new();