using Content.Shared.Doors.Components; namespace Content.Server.Doors.Components { /// /// Companion component to that handles firelock-specific behavior, including /// auto-closing on depressurization, air/fire alarm interactions, and preventing normal door functions when /// retaining pressure.. /// [RegisterComponent] public sealed class FirelockComponent : Component { /// /// Pry time modifier to be used when the firelock is currently closed due to fire or pressure. /// /// [DataField("lockedPryTimeModifier"), ViewVariables(VVAccess.ReadWrite)] public float LockedPryTimeModifier = 1.5f; [DataField("autocloseDelay")] public TimeSpan AutocloseDelay = TimeSpan.FromSeconds(3f); /// /// Maximum pressure difference before the firelock will refuse to open, in kPa. /// [DataField("pressureThreshold"), ViewVariables(VVAccess.ReadWrite)] public float PressureThreshold = 20; /// /// If true, and if this door has an , then it will only auto-close if the /// alarm is set to danger. /// [DataField("alarmAutoClose"), ViewVariables(VVAccess.ReadWrite)] public bool AlarmAutoClose = true; } }