using Content.Server.Botany.Systems; using Content.Server.Construction; using Content.Shared.Construction.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Botany.Components; [RegisterComponent] [Access(typeof(SeedExtractorSystem))] public sealed partial class SeedExtractorComponent : Component { /// /// The minimum amount of seed packets dropped with no machine upgrades. /// [DataField("baseMinSeeds"), ViewVariables(VVAccess.ReadWrite)] public int BaseMinSeeds = 1; /// /// The maximum amount of seed packets dropped with no machine upgrades. /// [DataField("baseMaxSeeds"), ViewVariables(VVAccess.ReadWrite)] public int BaseMaxSeeds = 3; /// /// Modifier to the amount of seeds outputted, set on . /// [ViewVariables(VVAccess.ReadWrite)] public float SeedAmountMultiplier; /// /// Machine part whose rating modifies the amount of seed packets dropped. /// [DataField("machinePartYieldAmount", customTypeSerializer: typeof(PrototypeIdSerializer))] public string MachinePartSeedAmount = "Manipulator"; /// /// How much the machine part quality affects the amount of seeds outputted. /// Going up a tier will multiply the seed output by this amount. /// [DataField("partRatingSeedAmountMultiplier")] public float PartRatingSeedAmountMultiplier = 1.5f; }