using Robust.Shared.GameStates; using Content.Shared.Clothing.EntitySystems; namespace Content.Shared.Clothing.Components; [RegisterComponent] [NetworkedComponent] [Access(typeof(SkatesSystem))] public sealed partial class SkatesComponent : Component { /// /// the levels of friction the wearer is subected to, higher the number the more friction. /// [DataField] public float Friction = 0.125f; /// /// Determines the turning ability of the wearer, Higher the number the less control of their turning ability. /// [DataField] public float FrictionNoInput = 0.125f; /// /// Sets the speed in which the wearer accelerates to full speed, higher the number the quicker the acceleration. /// [DataField] public float Acceleration = 0.25f; /// /// The minimum speed the wearer needs to be traveling to take damage from collision. /// [DataField] public float MinimumSpeed = 3f; /// /// The length of time the wearer is stunned for on collision. /// [DataField] public float StunSeconds = 3f; /// /// The time duration before another collision can take place. /// [DataField] public float DamageCooldown = 2f; /// /// The damage per increment of speed on collision. /// [DataField] public float SpeedDamage = 1f; /// /// Defaults for MinimumSpeed, StunSeconds, DamageCooldown and SpeedDamage. /// [ViewVariables] public float DefaultMinimumSpeed = 20f; [ViewVariables] public float DefaultStunSeconds = 1f; [ViewVariables] public float DefaultDamageCooldown = 2f; [ViewVariables] public float DefaultSpeedDamage = 0.5f; }