using System; using System.Collections.Generic; using Content.Shared.Whitelist; using Robust.Shared.Serialization; using Robust.Shared.Serialization.Manager.Attributes; namespace Content.Shared.Storage.Components { [Serializable, NetSerializable] public enum StorageMapVisuals : sbyte { InitLayers, LayerChanged, } [Serializable] [DataDefinition] public sealed class SharedMapLayerData { public string Layer = string.Empty; [DataField("whitelist", required: true)] public EntityWhitelist Whitelist { get; set; } = new(); } [Serializable, NetSerializable] public sealed class ShowLayerData : ICloneable { public IReadOnlyList QueuedEntities { get; internal set; } public ShowLayerData() { QueuedEntities = new List(); } public ShowLayerData(IEnumerable other) { QueuedEntities = new List(other); } public object Clone() { return new ShowLayerData(QueuedEntities); } } }