SharedGasThermomachineComponent.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Robust.Shared.Serialization;
  2. namespace Content.Shared.Atmos.Piping.Unary.Components;
  3. [Serializable, NetSerializable]
  4. public sealed record GasThermoMachineData(float EnergyDelta);
  5. [Serializable]
  6. [NetSerializable]
  7. public enum ThermomachineUiKey
  8. {
  9. Key
  10. }
  11. [Serializable]
  12. [NetSerializable]
  13. public sealed class GasThermomachineToggleMessage : BoundUserInterfaceMessage
  14. {
  15. }
  16. [Serializable]
  17. [NetSerializable]
  18. public sealed class GasThermomachineChangeTemperatureMessage : BoundUserInterfaceMessage
  19. {
  20. public float Temperature { get; }
  21. public GasThermomachineChangeTemperatureMessage(float temperature)
  22. {
  23. Temperature = temperature;
  24. }
  25. }
  26. [Serializable]
  27. [NetSerializable]
  28. public sealed class GasThermomachineBoundUserInterfaceState : BoundUserInterfaceState
  29. {
  30. public float MinTemperature { get; }
  31. public float MaxTemperature { get; }
  32. public float Temperature { get; }
  33. public bool Enabled { get; }
  34. public bool IsHeater { get; }
  35. public GasThermomachineBoundUserInterfaceState(float minTemperature, float maxTemperature, float temperature, bool enabled, bool isHeater)
  36. {
  37. MinTemperature = minTemperature;
  38. MaxTemperature = maxTemperature;
  39. Temperature = temperature;
  40. Enabled = enabled;
  41. IsHeater = isHeater;
  42. }
  43. }