SharedGasMixerComponent.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using Robust.Shared.Serialization;
  2. namespace Content.Shared.Atmos.Piping.Trinary.Components
  3. {
  4. [Serializable, NetSerializable]
  5. public enum GasMixerUiKey
  6. {
  7. Key,
  8. }
  9. [Serializable, NetSerializable]
  10. public sealed class GasMixerBoundUserInterfaceState : BoundUserInterfaceState
  11. {
  12. public string MixerLabel { get; }
  13. public float OutputPressure { get; }
  14. public bool Enabled { get; }
  15. public float NodeOne { get; }
  16. public GasMixerBoundUserInterfaceState(string mixerLabel, float outputPressure, bool enabled, float nodeOne)
  17. {
  18. MixerLabel = mixerLabel;
  19. OutputPressure = outputPressure;
  20. Enabled = enabled;
  21. NodeOne = nodeOne;
  22. }
  23. }
  24. [Serializable, NetSerializable]
  25. public sealed class GasMixerToggleStatusMessage : BoundUserInterfaceMessage
  26. {
  27. public bool Enabled { get; }
  28. public GasMixerToggleStatusMessage(bool enabled)
  29. {
  30. Enabled = enabled;
  31. }
  32. }
  33. [Serializable, NetSerializable]
  34. public sealed class GasMixerChangeOutputPressureMessage : BoundUserInterfaceMessage
  35. {
  36. public float Pressure { get; }
  37. public GasMixerChangeOutputPressureMessage(float pressure)
  38. {
  39. Pressure = pressure;
  40. }
  41. }
  42. [Serializable, NetSerializable]
  43. public sealed class GasMixerChangeNodePercentageMessage : BoundUserInterfaceMessage
  44. {
  45. public float NodeOne { get; }
  46. public GasMixerChangeNodePercentageMessage(float nodeOne)
  47. {
  48. NodeOne = nodeOne;
  49. }
  50. }
  51. }