using Robust.Shared.Serialization; using Robust.Shared.Audio; namespace Content.Shared.Paper; /// /// Set of required information to draw a stamp in UIs, where /// representing the state of the stamp at the point in time /// when it was applied to a paper. These fields mirror the /// equivalent in the component. /// [DataDefinition, Serializable, NetSerializable] public partial struct StampDisplayInfo { StampDisplayInfo(string s) { StampedName = s; } [DataField("stampedName")] public string StampedName; [DataField("stampedColor")] public Color StampedColor; }; [RegisterComponent] public sealed partial class StampComponent : Component { /// /// The loc string name that will be stamped to the piece of paper on examine. /// [DataField("stampedName")] public string StampedName { get; set; } = "stamp-component-stamped-name-default"; /// /// The sprite state of the stamp to display on the paper from paper Sprite path. /// [DataField("stampState")] public string StampState { get; set; } = "paper_stamp-generic"; /// /// The color of the ink used by the stamp in UIs /// [DataField("stampedColor")] public Color StampedColor = Color.FromHex("#BB3232"); // StyleNano.DangerousRedFore /// /// The sound when stamp stamped /// [DataField("sound")] public SoundSpecifier? Sound = null; }