using Content.Shared.Damage; using Robust.Shared.Audio; using Robust.Shared.GameStates; namespace Content.Shared.Clumsy; /// /// A simple clumsy tag-component. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class ClumsyComponent : Component { // Standard options. Try to fit these in if you can! /// /// Sound to play when clumsy interactions fail. /// [DataField] public SoundSpecifier ClumsySound = new SoundPathSpecifier("/Audio/Items/bikehorn.ogg"); /// /// Default chance to fail a clumsy interaction. /// If a system needs to use something else, add a new variable in the component, do not modify this percentage. /// [DataField, AutoNetworkedField] public float ClumsyDefaultCheck = 0.5f; /// /// Default stun time. /// If a system needs to use something else, add a new variable in the component, do not modify this number. /// [DataField, AutoNetworkedField] public TimeSpan ClumsyDefaultStunTime = TimeSpan.FromSeconds(2.5); // Specific options /// /// Sound to play after hitting your head on a table. Ouch! /// [DataField] public SoundCollectionSpecifier TableBonkSound = new SoundCollectionSpecifier("TrayHit"); /// /// Stun time after failing to shoot a gun. /// [DataField, AutoNetworkedField] public TimeSpan GunShootFailStunTime = TimeSpan.FromSeconds(3); /// /// Stun time after failing to shoot a gun. /// [DataField, AutoNetworkedField] public DamageSpecifier? GunShootFailDamage; /// /// Noise to play after failing to shoot a gun. Boom! /// [DataField] public SoundSpecifier GunShootFailSound = new SoundPathSpecifier("/Audio/Weapons/Guns/Gunshots/bang.ogg"); }