Hotplate overhaul (#17586)
* Hotplate overhaul - Beakers are now placed on top of the hotplate instead of itemslot. - Hotplate LED now only lights up if it's heating something. - More comments/xmldoc. - Some other minor tweaks. * Actually remove the beaker slot
This commit is contained in:
@@ -1,19 +1,50 @@
|
||||
namespace Content.Server.Chemistry.Components;
|
||||
using Content.Shared.Whitelist;
|
||||
|
||||
namespace Content.Server.Chemistry.Components;
|
||||
|
||||
[RegisterComponent]
|
||||
public sealed class SolutionHeaterComponent : Component
|
||||
{
|
||||
public readonly string BeakerSlotId = "beakerSlot";
|
||||
|
||||
[DataField("heatPerSecond")]
|
||||
public float HeatPerSecond = 120;
|
||||
/// <summary>
|
||||
/// How much heat is added per second to the solution, with no upgrades.
|
||||
/// </summary>
|
||||
[DataField("baseHeatPerSecond")]
|
||||
public float BaseHeatPerSecond = 120;
|
||||
|
||||
/// <summary>
|
||||
/// How much heat is added per second to the solution, taking upgrades into account.
|
||||
/// </summary>
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public float HeatMultiplier = 1;
|
||||
public float HeatPerSecond;
|
||||
|
||||
[DataField("machinePartHeatPerSecond")]
|
||||
public string MachinePartHeatPerSecond = "Capacitor";
|
||||
/// <summary>
|
||||
/// The machine part that affects the heat multiplier.
|
||||
/// </summary>
|
||||
[DataField("machinePartHeatMultiplier")]
|
||||
public string MachinePartHeatMultiplier = "Capacitor";
|
||||
|
||||
/// <summary>
|
||||
/// How much each upgrade multiplies the heat by.
|
||||
/// </summary>
|
||||
[DataField("partRatingHeatMultiplier")]
|
||||
public float PartRatingHeatMultiplier = 1.5f;
|
||||
|
||||
/// <summary>
|
||||
/// The entities that are placed on the heater.
|
||||
/// <summary>
|
||||
[DataField("placedEntities")]
|
||||
public HashSet<EntityUid> PlacedEntities = new();
|
||||
|
||||
/// <summary>
|
||||
/// The max amount of entities that can be heated at the same time.
|
||||
/// </summary>
|
||||
[DataField("maxEntities")]
|
||||
public uint MaxEntities = 1;
|
||||
|
||||
/// <summary>
|
||||
/// Whitelist for entities that can be placed on the heater.
|
||||
/// </summary>
|
||||
[DataField("whitelist")]
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public EntityWhitelist? Whitelist;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user