using Content.Shared.DeviceLinking; using Robust.Shared.Audio; using Robust.Shared.Prototypes; namespace Content.Server.DeviceLinking.Components; [RegisterComponent] public sealed partial class SignalTimerComponent : Component { [DataField] public double Delay = 5; /// /// This shows the Label: text box in the UI. /// [DataField] public bool CanEditLabel = true; /// /// The label, used for TextScreen visuals currently. /// [DataField] public string Label = string.Empty; /// /// Default max width of a label (how many letters can this render?) /// [DataField] public int MaxLength = 5; /// /// The port that gets signaled when the timer triggers. /// [DataField] public ProtoId TriggerPort = "Timer"; /// /// The port that gets signaled when the timer starts. /// [DataField] public ProtoId StartPort = "Start"; [DataField] public ProtoId Trigger = "Trigger"; /// /// If not null, this timer will play this sound when done. /// [DataField] public SoundSpecifier? DoneSound; /// /// The maximum duration in seconds /// When a larger number is in the input box, the display will start counting down from this one instead /// [DataField] public Double MaxDuration = 3599; // 59m 59s }