1
0

SharedParticleAcceleratorComponent.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. using Robust.Shared.Serialization;
  2. namespace Content.Shared.Singularity.Components
  3. {
  4. [NetSerializable, Serializable]
  5. public enum ParticleAcceleratorVisuals
  6. {
  7. VisualState
  8. }
  9. [NetSerializable, Serializable]
  10. public enum ParticleAcceleratorVisualState
  11. {
  12. //Open, //no prefix
  13. //Wired, //w prefix
  14. Unpowered, //c prefix
  15. Powered, //p prefix
  16. Level0, //0 prefix
  17. Level1, //1 prefix
  18. Level2, //2 prefix
  19. Level3 //3 prefix
  20. }
  21. [NetSerializable, Serializable]
  22. public enum ParticleAcceleratorPowerState : byte
  23. {
  24. Standby = ParticleAcceleratorVisualState.Powered,
  25. Level0 = ParticleAcceleratorVisualState.Level0,
  26. Level1 = ParticleAcceleratorVisualState.Level1,
  27. Level2 = ParticleAcceleratorVisualState.Level2,
  28. Level3 = ParticleAcceleratorVisualState.Level3,
  29. }
  30. public enum ParticleAcceleratorVisualLayers
  31. {
  32. Base,
  33. Unlit
  34. }
  35. [Serializable, NetSerializable]
  36. public enum ParticleAcceleratorWireStatus
  37. {
  38. Power,
  39. Keyboard,
  40. Limiter,
  41. Strength,
  42. }
  43. [NetSerializable, Serializable]
  44. public sealed class ParticleAcceleratorUIState : BoundUserInterfaceState
  45. {
  46. public bool Assembled;
  47. public bool Enabled;
  48. public ParticleAcceleratorPowerState State;
  49. public int PowerDraw;
  50. public int PowerReceive;
  51. //dont need a bool for the controlbox because... this is sent to the controlbox :D
  52. public bool EmitterStarboardExists;
  53. public bool EmitterForeExists;
  54. public bool EmitterPortExists;
  55. public bool PowerBoxExists;
  56. public bool FuelChamberExists;
  57. public bool EndCapExists;
  58. public bool InterfaceBlock;
  59. public ParticleAcceleratorPowerState MaxLevel;
  60. public bool WirePowerBlock;
  61. public ParticleAcceleratorUIState(bool assembled, bool enabled, ParticleAcceleratorPowerState state, int powerReceive, int powerDraw, bool emitterStarboardExists, bool emitterForeExists, bool emitterPortExists, bool powerBoxExists, bool fuelChamberExists, bool endCapExists, bool interfaceBlock, ParticleAcceleratorPowerState maxLevel, bool wirePowerBlock)
  62. {
  63. Assembled = assembled;
  64. Enabled = enabled;
  65. State = state;
  66. PowerDraw = powerDraw;
  67. PowerReceive = powerReceive;
  68. EmitterStarboardExists = emitterStarboardExists;
  69. EmitterForeExists = emitterForeExists;
  70. EmitterPortExists = emitterPortExists;
  71. PowerBoxExists = powerBoxExists;
  72. FuelChamberExists = fuelChamberExists;
  73. EndCapExists = endCapExists;
  74. InterfaceBlock = interfaceBlock;
  75. MaxLevel = maxLevel;
  76. WirePowerBlock = wirePowerBlock;
  77. }
  78. }
  79. [NetSerializable, Serializable]
  80. public sealed class ParticleAcceleratorSetEnableMessage : BoundUserInterfaceMessage
  81. {
  82. public readonly bool Enabled;
  83. public ParticleAcceleratorSetEnableMessage(bool enabled)
  84. {
  85. Enabled = enabled;
  86. }
  87. }
  88. [NetSerializable, Serializable]
  89. public sealed class ParticleAcceleratorRescanPartsMessage : BoundUserInterfaceMessage
  90. {
  91. public ParticleAcceleratorRescanPartsMessage()
  92. {
  93. }
  94. }
  95. [NetSerializable, Serializable]
  96. public sealed class ParticleAcceleratorSetPowerStateMessage : BoundUserInterfaceMessage
  97. {
  98. public readonly ParticleAcceleratorPowerState State;
  99. public ParticleAcceleratorSetPowerStateMessage(ParticleAcceleratorPowerState state)
  100. {
  101. State = state;
  102. }
  103. }
  104. [NetSerializable, Serializable]
  105. public enum ParticleAcceleratorControlBoxUiKey
  106. {
  107. Key
  108. }
  109. }