reagent grinder machine upgrade (#12422)
* reagent grinder machine upgrade * grinder storage upgrades
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
using Content.Shared.Kitchen;
|
||||
using Content.Server.Kitchen.EntitySystems;
|
||||
using Content.Shared.Construction.Prototypes;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
||||
|
||||
namespace Content.Server.Kitchen.Components
|
||||
{
|
||||
@@ -13,13 +15,30 @@ namespace Content.Server.Kitchen.Components
|
||||
[Access(typeof(ReagentGrinderSystem)), RegisterComponent]
|
||||
public sealed class ReagentGrinderComponent : Component
|
||||
{
|
||||
//YAML serialization vars
|
||||
[DataField("storageMaxEntities"), ViewVariables(VVAccess.ReadWrite)]
|
||||
public int StorageMaxEntities = 16;
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public int StorageMaxEntities = 6;
|
||||
|
||||
[DataField("baseStorageMaxEntities"), ViewVariables(VVAccess.ReadWrite)]
|
||||
public int BaseStorageMaxEntities = 4;
|
||||
|
||||
[DataField("machinePartStorageMax", customTypeSerializer: typeof(PrototypeIdSerializer<MachinePartPrototype>))]
|
||||
public string MachinePartStorageMax = "MatterBin";
|
||||
|
||||
[DataField("storagePerPartRating")]
|
||||
public int StoragePerPartRating = 4;
|
||||
|
||||
[DataField("workTime"), ViewVariables(VVAccess.ReadWrite)]
|
||||
public TimeSpan WorkTime = TimeSpan.FromSeconds(3.5); // Roughly matches the grind/juice sounds.
|
||||
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public float WorkTimeMultiplier = 1;
|
||||
|
||||
[DataField("machinePartWorkTime", customTypeSerializer: typeof(PrototypeIdSerializer<MachinePartPrototype>))]
|
||||
public string MachinePartWorkTime = "Manipulator";
|
||||
|
||||
[DataField("partRatingWorkTimeMultiplier")]
|
||||
public float PartRatingWorkTimerMulitplier = 0.6f;
|
||||
|
||||
[DataField("clickSound"), ViewVariables(VVAccess.ReadWrite)]
|
||||
public SoundSpecifier ClickSound { get; set; } = new SoundPathSpecifier("/Audio/Machines/machine_switch.ogg");
|
||||
|
||||
@@ -28,6 +47,8 @@ namespace Content.Server.Kitchen.Components
|
||||
|
||||
[DataField("juiceSound"), ViewVariables(VVAccess.ReadWrite)]
|
||||
public SoundSpecifier JuiceSound { get; set; } = new SoundPathSpecifier("/Audio/Machines/juicer.ogg");
|
||||
|
||||
public IPlayingAudioStream? AudioStream;
|
||||
}
|
||||
|
||||
[Access(typeof(ReagentGrinderSystem)), RegisterComponent]
|
||||
@@ -37,7 +58,7 @@ namespace Content.Server.Kitchen.Components
|
||||
/// Remaining time until the grinder finishes grinding/juicing.
|
||||
/// </summary>
|
||||
[ViewVariables]
|
||||
public float WorkTimer;
|
||||
public TimeSpan EndTime;
|
||||
|
||||
[ViewVariables]
|
||||
public GrinderProgram Program;
|
||||
|
||||
Reference in New Issue
Block a user