using Content.Shared.Popups; using Robust.Shared.GameStates; namespace Content.Shared.Trigger.Components.Effects; /// /// Displays a popup on the target when triggered. /// Will display the popup on the user when is true. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class PopupOnTriggerComponent : BaseXOnTriggerComponent { /// /// The text this popup will display to the recipient. /// [DataField(required: true), AutoNetworkedField] public LocId Text; /// /// The text this popup will display to everything but the recipient. /// If left null this will reuse . /// [DataField, AutoNetworkedField] public LocId? OtherText; /// /// The size and color of the popup. /// [DataField, AutoNetworkedField] public PopupType PopupType = PopupType.Small; /// /// If true, the user is the recipient of the popup. /// If false, this entity is the recipient. /// [DataField, AutoNetworkedField] public bool UserIsRecipient = true; /// /// If true, this popup will only play for the recipient and ignore prediction. /// [DataField, AutoNetworkedField] public bool Quiet; /// /// Whether to use predicted popups. /// /// If false, this will spam any client that causes this trigger. [DataField, AutoNetworkedField] public bool Predicted = true; }