Add pressure limit to gas tanks (#19879)

This commit is contained in:
Errant
2023-09-07 07:37:23 +02:00
committed by GitHub
parent 610a10fb85
commit 63c7bca04e
2 changed files with 11 additions and 1 deletions

View File

@@ -47,6 +47,12 @@ namespace Content.Server.Atmos.Components
[DataField("outputPressure"), ViewVariables(VVAccess.ReadWrite)]
public float OutputPressure = DefaultOutputPressure;
/// <summary>
/// The maximum allowed output pressure.
/// </summary>
[DataField("maxOutputPressure"), ViewVariables(VVAccess.ReadWrite)]
public float MaxOutputPressure = 3 * DefaultOutputPressure;
/// <summary>
/// Tank is connected to internals.
/// </summary>

View File

@@ -69,7 +69,11 @@ namespace Content.Server.Atmos.EntitySystems
private void OnGasTankSetPressure(EntityUid uid, GasTankComponent component, GasTankSetPressureMessage args)
{
component.OutputPressure = args.Pressure;
var pressure = Math.Min(args.Pressure, component.MaxOutputPressure);
component.OutputPressure = pressure;
UpdateUserInterface(component, true);
}
public void UpdateUserInterface(GasTankComponent component, bool initialUpdate = false)