// SPDX-FileCopyrightText: 2024 gluesniffler <159397573+gluesniffler@users.noreply.github.com> // SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com> // // SPDX-License-Identifier: AGPL-3.0-or-later using Robust.Shared.Prototypes; using Robust.Shared.Serialization; namespace Content.Shared._Shitmed.Medical.Surgery; [Serializable, NetSerializable] public enum SurgeryUIKey { Key } [Serializable, NetSerializable] public sealed class SurgeryBuiState(Dictionary> choices) : BoundUserInterfaceState { public readonly Dictionary> Choices = choices; } [Serializable, NetSerializable] public sealed class SurgeryBuiRefreshMessage : BoundUserInterfaceMessage { } [Serializable, NetSerializable] public sealed class SurgeryStepChosenBuiMsg(NetEntity part, EntProtoId surgery, EntProtoId step, bool isBody) : BoundUserInterfaceMessage { public readonly NetEntity Part = part; public readonly EntProtoId Surgery = surgery; public readonly EntProtoId Step = step; // Used as a marker for whether or not we're hijacking surgery by applying it on the body itself. public readonly bool IsBody = isBody; }