using Unity.NetCode; namespace ProjectM.Simulation { /// /// Client -> server request to equip an item from the sender's personal inventory into the slot the /// catalog assigns it (). A one-off action, so it is an RPC (not a /// per-tick predicted input); applied exactly once server-only in the plain SimulationSystemGroup. Carries /// only the ItemId — the server derives the target slot from the catalog, so a client can't force a weapon /// into the armor slot. Unconditional wire type (no #if); the server resolves the sender via SourceConnection. /// public struct EquipRequest : IRpcCommand { /// The inventory item to equip; the server resolves its slot + effects from the catalog. public ushort ItemId; } /// /// Client -> server request to unequip whatever occupies (an ), /// returning the item to the personal inventory and stripping its effects. Unconditional wire type. /// public struct UnequipRequest : IRpcCommand { /// The to clear. public byte Slot; } }