using Content.Shared.Nutrition.EntitySystems; using Content.Shared.FixedPoint; using Robust.Shared.Audio; using Robust.Shared.GameStates; namespace Content.Shared.Nutrition.Components; [Obsolete("Migration to Content.Shared.Nutrition.Components.EdibleComponent is required")] [NetworkedComponent, AutoGenerateComponentState] [RegisterComponent, Access(typeof(SharedDrinkSystem))] public sealed partial class DrinkComponent : Component { [DataField] public string Solution = "drink"; [DataField, AutoNetworkedField] public SoundSpecifier UseSound = new SoundPathSpecifier("/Audio/Items/drink.ogg"); [DataField, AutoNetworkedField] public FixedPoint2 TransferAmount = FixedPoint2.New(5); /// /// How long it takes to drink this yourself. /// [DataField, AutoNetworkedField] public float Delay = 1; /// /// If true, trying to drink when empty will not handle the event. /// This means other systems such as equipping on use can run. /// Example usecase is the bucket. /// [DataField] public bool IgnoreEmpty; /// /// This is how many seconds it takes to force feed someone this drink. /// [DataField, AutoNetworkedField] public float ForceFeedDelay = 3; }