using Content.Server.Radio.EntitySystems; using Content.Shared.Chat; using Content.Shared.Radio; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set; namespace Content.Server.Radio.Components; /// /// Listens for radio messages and relays them to local chat. /// [RegisterComponent] [Access(typeof(RadioDeviceSystem))] public sealed partial class RadioSpeakerComponent : Component { /// /// Whether or not interacting with this entity /// toggles it on or off. /// [DataField("toggleOnInteract")] public bool ToggleOnInteract = true; [DataField("channels", customTypeSerializer: typeof(PrototypeIdHashSetSerializer))] public HashSet Channels = new () { SharedChatSystem.CommonChannel }; [DataField("enabled")] public bool Enabled; }