* Initial commit * Review feedback changes * ProtoId * TempCommit * First attempt to have client alerts * Review changes
30 lines
907 B
C#
30 lines
907 B
C#
using Robust.Shared.GameStates;
|
|
using Robust.Shared.Serialization;
|
|
|
|
namespace Content.Shared.Alert;
|
|
|
|
/// <summary>
|
|
/// Handles the icons on the right side of the screen.
|
|
/// Should only be used for player-controlled entities.
|
|
/// </summary>
|
|
// 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<AlertKey, AlertState> Alerts = new();
|
|
|
|
public override bool SendOnlyToOwner => true;
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public sealed class AlertComponentState : ComponentState
|
|
{
|
|
public Dictionary<AlertKey, AlertState> Alerts { get; }
|
|
public AlertComponentState(Dictionary<AlertKey, AlertState> alerts)
|
|
{
|
|
Alerts = alerts;
|
|
}
|
|
}
|