Files
tbd-station-14/Content.Shared/Atmos/Piping/Binary/Components/SharedGasVolumePumpComponent.cs
ike709 17e1b7827e Adds UIs for volume and pressure pumps (#5155)
* Adds UIs for volume and pressure pumps

* Update Content.Server/Atmos/Piping/Binary/EntitySystems/GasPressurePumpSystem.cs

* Update Content.Server/Atmos/Piping/Binary/EntitySystems/GasVolumePumpSystem.cs

Co-authored-by: ike709 <ike709@github.com>
2021-11-04 17:41:56 -07:00

50 lines
1.3 KiB
C#

using System;
using Robust.Shared.GameObjects;
using Robust.Shared.Serialization;
namespace Content.Shared.Atmos.Piping.Binary.Components
{
[Serializable, NetSerializable]
public enum GasVolumePumpUiKey
{
Key,
}
[Serializable, NetSerializable]
public class GasVolumePumpBoundUserInterfaceState : BoundUserInterfaceState
{
public string PumpLabel { get; }
public float TransferRate { get; }
public bool Enabled { get; }
public GasVolumePumpBoundUserInterfaceState(string pumpLabel, float transferRate, bool enabled)
{
PumpLabel = pumpLabel;
TransferRate = transferRate;
Enabled = enabled;
}
}
[Serializable, NetSerializable]
public class GasVolumePumpToggleStatusMessage : BoundUserInterfaceMessage
{
public bool Enabled { get; }
public GasVolumePumpToggleStatusMessage(bool enabled)
{
Enabled = enabled;
}
}
[Serializable, NetSerializable]
public class GasVolumePumpChangeTransferRateMessage : BoundUserInterfaceMessage
{
public float TransferRate { get; }
public GasVolumePumpChangeTransferRateMessage(float transferRate)
{
TransferRate = transferRate;
}
}
}