/// Companion component to DoorComponent that handles airlock-specific behavior -- wires, requiring power to operate, bolts, and allowing automatic closing.
/// </summary>
[RegisterComponent, NetworkedComponent]
[Access(typeof(SharedAirlockSystem), Friend = AccessPermissions.ReadWriteExecute, Other = AccessPermissions.Read)]
publicsealedclassAirlockComponent:Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("safety")]
publicboolSafety=true;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("emergencyAccess")]
publicboolEmergencyAccess=false;
/// <summary>
/// Pry modifier for a powered airlock.
/// Most anything that can pry powered has a pry speed bonus,
/// so this default is closer to 6 effectively on e.g. jaws (9 seconds when applied to other default.)
/// </summary>
[DataField("poweredPryModifier")]
publicreadonlyfloatPoweredPryModifier=9f;
/// <summary>
/// Whether the maintenance panel should be visible even if the airlock is opened.
/// </summary>
[DataField("openPanelVisible")]
publicboolOpenPanelVisible=false;
/// <summary>
/// Whether the airlock should stay open if the airlock was clicked.
/// If the airlock was bumped into it will still auto close.
/// </summary>
[DataField("keepOpenIfClicked")]
publicboolKeepOpenIfClicked=false;
/// <summary>
/// Whether the airlock should auto close. This value is reset every time the airlock closes.
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
publicboolAutoClose=true;
/// <summary>
/// Delay until an open door automatically closes.