Make component fields datafields

This commit is contained in:
deltanedas
2024-08-22 16:38:58 +01:00
committed by Kevin Zheng
parent 6538687bec
commit 2d05be3740
3 changed files with 22 additions and 30 deletions

View File

@@ -11,8 +11,8 @@ namespace Content.Server.Atmos.Monitor.Components;
[RegisterComponent]
public sealed partial class AirAlarmComponent : Component
{
[ViewVariables] public AirAlarmMode CurrentMode { get; set; } = AirAlarmMode.Filtering;
[ViewVariables] public bool AutoMode { get; set; } = true;
[DataField] public AirAlarmMode CurrentMode { get; set; } = AirAlarmMode.Filtering;
[DataField] public bool AutoMode { get; set; } = true;
// Remember to null this afterwards.
[ViewVariables] public IAirAlarmModeUpdate? CurrentModeUpdater { get; set; }

View File

@@ -5,31 +5,25 @@ namespace Content.Server.Atmos.Piping.Trinary.Components
[RegisterComponent]
public sealed partial class GasFilterComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("enabled")]
public bool Enabled { get; set; } = true;
[DataField]
public bool Enabled = true;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("inlet")]
public string InletName { get; set; } = "inlet";
public string InletName = "inlet";
[ViewVariables(VVAccess.ReadWrite)]
[DataField("filter")]
public string FilterName { get; set; } = "filter";
public string FilterName = "filter";
[ViewVariables(VVAccess.ReadWrite)]
[DataField("outlet")]
public string OutletName { get; set; } = "outlet";
public string OutletName = "outlet";
[ViewVariables(VVAccess.ReadWrite)]
[DataField]
public float TransferRate = Atmospherics.MaxTransferRate;
[DataField("transferRate")]
public float TransferRate { get; set; } = Atmospherics.MaxTransferRate;
[DataField]
public float MaxTransferRate = Atmospherics.MaxTransferRate;
[DataField("maxTransferRate")]
public float MaxTransferRate { get; set; } = Atmospherics.MaxTransferRate;
[ViewVariables(VVAccess.ReadWrite)]
public Gas? FilteredGas { get; set; }
[DataField]
public Gas? FilteredGas;
}
}

View File

@@ -9,26 +9,25 @@ namespace Content.Server.Atmos.Piping.Unary.Components
[Access(typeof(GasVentScrubberSystem))]
public sealed partial class GasVentScrubberComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField]
public bool Enabled { get; set; } = false;
[ViewVariables]
[DataField]
public bool IsDirty { get; set; } = false;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("outlet")]
public string OutletName { get; set; } = "pipe";
[ViewVariables]
public readonly HashSet<Gas> FilterGases = new(GasVentScrubberData.DefaultFilterGases);
[DataField]
public HashSet<Gas> FilterGases = new(GasVentScrubberData.DefaultFilterGases);
[ViewVariables(VVAccess.ReadWrite)]
[DataField]
public ScrubberPumpDirection PumpDirection { get; set; } = ScrubberPumpDirection.Scrubbing;
/// <summary>
/// Target volume to transfer. If <see cref="WideNet"/> is enabled, actual transfer rate will be much higher.
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
[DataField]
public float TransferRate
{
get => _transferRate;
@@ -37,18 +36,17 @@ namespace Content.Server.Atmos.Piping.Unary.Components
private float _transferRate = Atmospherics.MaxTransferRate;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("maxTransferRate")]
[DataField]
public float MaxTransferRate = Atmospherics.MaxTransferRate;
/// <summary>
/// As pressure difference approaches this number, the effective volume rate may be smaller than <see
/// cref="TransferRate"/>
/// </summary>
[DataField("maxPressure")]
[DataField]
public float MaxPressure = Atmospherics.MaxOutputPressure;
[ViewVariables(VVAccess.ReadWrite)]
[DataField]
public bool WideNet { get; set; } = false;
public GasVentScrubberData ToAirAlarmData()