using Robust.Shared.Audio; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Research.TechnologyDisk.Components; [RegisterComponent] public sealed partial class DiskConsoleComponent : Component { /// /// How much it costs to print a disk /// [DataField("pricePerDisk"), ViewVariables(VVAccess.ReadWrite)] public int PricePerDisk = 1000; /// /// Frontier: How much it costs to print a rare disk /// [DataField("pricePerRareDisk"), ViewVariables(VVAccess.ReadWrite)] public int PricePerRareDisk = 1300; /// /// The prototype of what's being printed /// [DataField("diskPrototype", customTypeSerializer: typeof(PrototypeIdSerializer)), ViewVariables(VVAccess.ReadWrite)] public string DiskPrototype = "TechnologyDisk"; [DataField("diskPrototypeRare", customTypeSerializer: typeof(PrototypeIdSerializer)), ViewVariables(VVAccess.ReadWrite)] // Frontier public string DiskPrototypeRare = "TechnologyDiskRare"; // Frontier [DataField, ViewVariables(VVAccess.ReadWrite)] // Frontier public bool DiskRare = false; // Frontier /// /// How long it takes to print /// [DataField("printDuration"), ViewVariables(VVAccess.ReadWrite)] public TimeSpan PrintDuration = TimeSpan.FromSeconds(1); /// /// The sound made when printing occurs /// [DataField("printSound")] public SoundSpecifier PrintSound = new SoundPathSpecifier("/Audio/Machines/printer.ogg"); }