using Content.Shared.CCVar; using Content.Shared.Damage; using Content.Shared.Interaction; using Robust.Shared.Audio; using Robust.Shared.GameStates; namespace Content.Shared.Climbing { [RegisterComponent, NetworkedComponent] public sealed class ClimbableComponent : Component { /// /// The range from which this entity can be climbed. /// [DataField("range")] public float Range = SharedInteractionSystem.InteractionRange / 1.4f; /// /// The time it takes to climb onto the entity. /// [DataField("delay")] public float ClimbDelay = 0.8f; /// /// If set, people can bonk on this if is set or if they are clumsy. /// [DataField("bonk")] public bool Bonk = false; /// /// Chance of bonk triggering if the user is clumsy. /// [DataField("bonkClumsyChance")] public float BonkClumsyChance = 0.75f; /// /// Sound to play when bonking. /// /// [DataField("bonkSound")] public SoundSpecifier? BonkSound; /// /// How long to stun players on bonk, in seconds. /// /// [DataField("bonkTime")] public float BonkTime = 2; /// /// How much damage to apply on bonk. /// /// [DataField("bonkDamage")] public DamageSpecifier? BonkDamage; } }