Hyper convection lathes and industrial ore processor (#23202)

* Hyper-convection lathes and industrial ore processor

* balance

* gold... why not?

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Nemanja
2023-12-30 11:18:58 -05:00
committed by GitHub
parent 88adf1ea1a
commit c3f81bfe03
25 changed files with 367 additions and 62 deletions

View File

@@ -57,39 +57,15 @@ namespace Content.Shared.Lathe
/// <summary>
/// A modifier that changes how long it takes to print a recipe
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
[DataField, ViewVariables(VVAccess.ReadWrite)]
public float TimeMultiplier = 1;
/// <summary>
/// The machine part that reduces how long it takes to print a recipe.
/// </summary>
[DataField]
public ProtoId<MachinePartPrototype> MachinePartPrintSpeed = "Manipulator";
/// <summary>
/// The value that is used to calculate the modified <see cref="TimeMultiplier"/>
/// </summary>
[DataField]
public float PartRatingPrintTimeMultiplier = 0.5f;
/// <summary>
/// A modifier that changes how much of a material is needed to print a recipe
/// </summary>
[ViewVariables(VVAccess.ReadWrite), AutoNetworkedField]
[DataField, ViewVariables(VVAccess.ReadWrite), AutoNetworkedField]
public float MaterialUseMultiplier = 1;
/// <summary>
/// The machine part that reduces how much material it takes to print a recipe.
/// </summary>
[DataField]
public ProtoId<MachinePartPrototype> MachinePartMaterialUse = "MatterBin";
/// <summary>
/// The value that is used to calculate the modifier <see cref="MaterialUseMultiplier"/>
/// </summary>
[DataField]
public float PartRatingMaterialUseMultiplier = DefaultPartRatingMaterialUseMultiplier;
public const float DefaultPartRatingMaterialUseMultiplier = 0.85f;
#endregion
}
@@ -105,4 +81,10 @@ namespace Content.Shared.Lathe
Lathe = lathe;
}
}
/// <summary>
/// Event raised on a lathe when it starts producing a recipe.
/// </summary>
[ByRefEvent]
public readonly record struct LatheStartPrintingEvent(LatheRecipePrototype Recipe);
}