1
0

SharedCloningConsole.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using Robust.Shared.Serialization;
  2. namespace Content.Shared.Cloning.CloningConsole
  3. {
  4. [Serializable, NetSerializable]
  5. public sealed class CloningConsoleBoundUserInterfaceState : BoundUserInterfaceState
  6. {
  7. public readonly string? ScannerBodyInfo;
  8. public readonly string? ClonerBodyInfo;
  9. public readonly bool MindPresent;
  10. public readonly ClonerStatus CloningStatus;
  11. public readonly bool ScannerConnected;
  12. public readonly bool ScannerInRange;
  13. public readonly bool ClonerConnected;
  14. public readonly bool ClonerInRange;
  15. public CloningConsoleBoundUserInterfaceState(string? scannerBodyInfo, string? cloningBodyInfo, bool mindPresent, ClonerStatus cloningStatus, bool scannerConnected, bool scannerInRange, bool clonerConnected, bool clonerInRange)
  16. {
  17. ScannerBodyInfo = scannerBodyInfo;
  18. ClonerBodyInfo = cloningBodyInfo;
  19. MindPresent = mindPresent;
  20. CloningStatus = cloningStatus;
  21. ScannerConnected = scannerConnected;
  22. ScannerInRange = scannerInRange;
  23. ClonerConnected = clonerConnected;
  24. ClonerInRange = clonerInRange;
  25. }
  26. }
  27. [Serializable, NetSerializable]
  28. public enum ClonerStatus : byte
  29. {
  30. Ready,
  31. ScannerEmpty,
  32. ScannerOccupantAlive,
  33. OccupantMetaphyiscal,
  34. ClonerOccupied,
  35. NoClonerDetected,
  36. NoMindDetected
  37. }
  38. [Serializable, NetSerializable]
  39. public enum CloningConsoleUiKey : byte
  40. {
  41. Key
  42. }
  43. [Serializable, NetSerializable]
  44. public enum UiButton : byte
  45. {
  46. Clone,
  47. Eject
  48. }
  49. [Serializable, NetSerializable]
  50. public sealed class UiButtonPressedMessage : BoundUserInterfaceMessage
  51. {
  52. public readonly UiButton Button;
  53. public UiButtonPressedMessage(UiButton button)
  54. {
  55. Button = button;
  56. }
  57. }
  58. }