using Content.Shared.Chemistry.Reagent; using Content.Shared.FixedPoint; using Robust.Shared.Audio; using Robust.Shared.GameStates; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Shared.Lube; [RegisterComponent, NetworkedComponent] public sealed partial class LubeComponent : Component { [DataField("squeeze")] public SoundSpecifier Squeeze = new SoundPathSpecifier("/Audio/Items/squeezebottle.ogg"); /// /// Solution on the entity that contains the glue. /// [DataField("solution")] public string Solution = "drink"; /// /// Reagent that will be used as glue. /// [DataField("reagent", customTypeSerializer: typeof(PrototypeIdSerializer))] public string Reagent = "SpaceLube"; /// /// Reagent consumption per use. /// [DataField("consumption"), ViewVariables(VVAccess.ReadWrite)] public FixedPoint2 Consumption = FixedPoint2.New(3); /// /// Min slips per unit /// [DataField("minSlips"), ViewVariables(VVAccess.ReadWrite)] public int MinSlips = 1; /// /// Max slips per unit /// [DataField("maxSlips"), ViewVariables(VVAccess.ReadWrite)] public int MaxSlips = 6; [DataField("slipStrength"), ViewVariables(VVAccess.ReadWrite)] public int SlipStrength = 10; }