using Content.Shared.Chemistry.Components; using Content.Shared.Chemistry.Reagent; using Content.Shared.FixedPoint; using Robust.Shared.GameStates; using Robust.Shared.Prototypes; namespace Content.Shared.Animals; /// /// Gives the ability to produce wool fibers; /// produces endlessly if the owner does not have a HungerComponent. /// [RegisterComponent, AutoGenerateComponentState, AutoGenerateComponentPause, NetworkedComponent] public sealed partial class WoolyComponent : Component { /// /// The reagent to grow. /// [DataField, AutoNetworkedField] public ProtoId ReagentId = "Fiber"; /// /// The name of . /// [DataField, ViewVariables(VVAccess.ReadOnly)] public string SolutionName = "wool"; /// /// The solution to add reagent to. /// [ViewVariables(VVAccess.ReadOnly)] public Entity? Solution; /// /// The amount of reagent to be generated on update. /// [DataField, AutoNetworkedField] public FixedPoint2 Quantity = 25; /// /// The amount of nutrient consumed on update. /// [DataField, AutoNetworkedField] public float HungerUsage = 10f; /// /// How long to wait before growing wool. /// [DataField, AutoNetworkedField] public TimeSpan GrowthDelay = TimeSpan.FromMinutes(1); /// /// When to next try growing wool. /// [DataField, AutoPausedField, Access(typeof(WoolySystem))] public TimeSpan NextGrowth = TimeSpan.Zero; }