using Content.Shared.DeviceNetwork.Systems; using Robust.Shared.GameStates; namespace Content.Shared.DeviceNetwork.Components; [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] [Access(typeof(SharedDeviceListSystem))] public sealed partial class DeviceListComponent : Component { /// /// The list of devices can or can't connect to, depending on the field. /// [DataField, AutoNetworkedField] public HashSet Devices = new(); /// /// The limit of devices that can be linked to this device list. /// [ViewVariables(VVAccess.ReadWrite)] [DataField] public int DeviceLimit = 32; /// /// Whether the device list is used as an allow or deny list /// [ViewVariables(VVAccess.ReadWrite)] [DataField, AutoNetworkedField] public bool IsAllowList = true; /// /// Whether this device list also handles incoming device net packets /// [ViewVariables(VVAccess.ReadWrite)] [DataField, AutoNetworkedField] public bool HandleIncomingPackets; [DataField, Access(typeof(SharedNetworkConfiguratorSystem))] public HashSet Configurators = new(); }