using Robust.Shared.Audio; using Robust.Shared.GameStates; using Robust.Shared.Serialization; namespace Content.Shared.DeviceNetwork; [RegisterComponent] [NetworkedComponent] [Access(typeof(SharedNetworkConfiguratorSystem))] public sealed class NetworkConfiguratorComponent : Component { /// /// The entity containing a this configurator is currently interacting with /// [DataField("activeDeviceList")] public EntityUid? ActiveDeviceList = null; /// /// The list of devices stored in the configurator- /// [DataField("devices")] public Dictionary Devices = new(); [DataField("soundNoAccess")] public SoundSpecifier SoundNoAccess = new SoundPathSpecifier("/Audio/Machines/custom_deny.ogg"); } [Serializable, NetSerializable] public sealed class NetworkConfiguratorComponentState : ComponentState { public readonly EntityUid? ActiveDeviceList; public NetworkConfiguratorComponentState(EntityUid? activeDeviceList) { ActiveDeviceList = activeDeviceList; } }