using Content.Shared.DoAfter; using Robust.Shared.Audio; using Robust.Shared.Containers; using Robust.Shared.GameStates; namespace Content.Server._NF.CryoSleep; [RegisterComponent] public sealed partial class CryoSleepComponent : Component { [ViewVariables(VVAccess.ReadOnly)] public ContainerSlot BodyContainer = default!; /// /// The sound that is played when a player leaves the game via cryo /// [DataField] public SoundSpecifier LeaveSound = new SoundCollectionSpecifier("RadiationPulse"); /// /// The ID of the latest DoAfter event associated with this entity. May be null if there's no DoAfter going on. /// [ViewVariables(VVAccess.ReadOnly)] public DoAfterId? CryosleepDoAfter = null; /// /// The next time something should be able to try and escape the pod. /// [ViewVariables] public TimeSpan NextInternalOpenAttempt; /// /// The amount of time to wait between attempting to remove entities from the pod. /// [ViewVariables] public TimeSpan InternalOpenAttemptDelay = TimeSpan.FromSeconds(0.5); }