using Robust.Shared.GameStates; using Robust.Shared.Serialization; namespace Content.Shared.Alert; /// /// Handles the icons on the right side of the screen. /// Should only be used for player-controlled entities. /// // Component is not AutoNetworked due to supporting clientside-only alerts. // Component state is handled manually to avoid the server overwriting the client list. [RegisterComponent, NetworkedComponent] public sealed partial class AlertsComponent : Component { [ViewVariables] public Dictionary Alerts = new(); public override bool SendOnlyToOwner => true; } [Serializable, NetSerializable] public sealed class AlertComponentState : ComponentState { public Dictionary Alerts { get; } public AlertComponentState(Dictionary alerts) { Alerts = alerts; } }