using Content.Server.Buckle.Systems; using Content.Shared.Buckle.Components; namespace Content.Server.Buckle.Components; /// /// Component that handles sitting entities into s. /// [RegisterComponent] [ComponentReference(typeof(SharedBuckleComponent))] [Access(typeof(BuckleSystem))] public sealed class BuckleComponent : SharedBuckleComponent { /// /// The amount of time that must pass for this entity to /// be able to unbuckle after recently buckling. /// [DataField("delay")] public TimeSpan UnbuckleDelay = TimeSpan.FromSeconds(0.25f); /// /// The time that this entity buckled at. /// [ViewVariables] public TimeSpan BuckleTime; /// /// The strap that this component is buckled to. /// [ViewVariables] public StrapComponent? BuckledTo { get; set; } /// /// The amount of space that this entity occupies in a /// . /// [DataField("size")] public int Size = 100; }