using Content.Shared.Climbing.Components; using Robust.Shared.Audio; using Robust.Shared.GameStates; namespace Content.Shared.Clumsy.Components; /// /// Afflicted entity will occasionally bonk their head when trying to climb something bonkable. /// /// [RegisterComponent, NetworkedComponent] [Access(typeof(ClumsyStatusEffectSystem))] public sealed partial class ClumsyVaultStatusEffectComponent : Component { /// /// How often to fail. /// [DataField] public float ClumsyChance = 0.5f; /// /// Sound played upon failure. /// [DataField] public SoundSpecifier? ClumsySound = new SoundPathSpecifier("/Audio/Items/bikehorn.ogg"); /// /// Popup played to the afflicted when they fail. /// /// Parameters passed in: /// /// bonkable - The table being climbed on. /// /// [DataField] public LocId? SelfFailedMessage = "clumsy-vaulting-fail-message-user"; /// /// Popup played to others when the afflicted fails. /// /// Parameters passed in: /// /// bonkable - The table being climbed on. /// victim - The climber of the table. /// /// [DataField] public LocId? OtherFailedMessage = "clumsy-vaulting-fail-message-others"; /// /// Popup played when this entity is forced to vault and fails. /// /// Parameters passed in: /// /// bonkable - The table being climbed on. /// victim - The vaulter of the table. /// bonker - The entity forcing the vault. /// /// [DataField] public LocId? ForcedMessage = "clumsy-vaulting-fail-forced-message"; }