SurgeryUI.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. // SPDX-FileCopyrightText: 2024 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
  2. // SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
  3. //
  4. // SPDX-License-Identifier: AGPL-3.0-or-later
  5. using Robust.Shared.Prototypes;
  6. using Robust.Shared.Serialization;
  7. namespace Content.Shared._Shitmed.Medical.Surgery;
  8. [Serializable, NetSerializable]
  9. public enum SurgeryUIKey
  10. {
  11. Key
  12. }
  13. [Serializable, NetSerializable]
  14. public sealed class SurgeryBuiState(Dictionary<NetEntity, List<EntProtoId>> choices) : BoundUserInterfaceState
  15. {
  16. public readonly Dictionary<NetEntity, List<EntProtoId>> Choices = choices;
  17. }
  18. [Serializable, NetSerializable]
  19. public sealed class SurgeryBuiRefreshMessage : BoundUserInterfaceMessage
  20. {
  21. }
  22. [Serializable, NetSerializable]
  23. public sealed class SurgeryStepChosenBuiMsg(NetEntity part, EntProtoId surgery, EntProtoId step, bool isBody) : BoundUserInterfaceMessage
  24. {
  25. public readonly NetEntity Part = part;
  26. public readonly EntProtoId Surgery = surgery;
  27. public readonly EntProtoId Step = step;
  28. // Used as a marker for whether or not we're hijacking surgery by applying it on the body itself.
  29. public readonly bool IsBody = isBody;
  30. }