using Content.Shared.FixedPoint; using Robust.Shared.Prototypes; using Robust.Shared.Serialization; namespace Content.Shared.Store; [Serializable, NetSerializable] public enum StoreUiKey : byte { Key } [Serializable, NetSerializable] public sealed class StoreUpdateState : BoundUserInterfaceState { public readonly HashSet Listings; public readonly Dictionary, FixedPoint2> Balance; public readonly bool ShowFooter; public readonly bool AllowRefund; public StoreUpdateState(HashSet listings, Dictionary, FixedPoint2> balance, bool showFooter, bool allowRefund) { Listings = listings; Balance = balance; ShowFooter = showFooter; AllowRefund = allowRefund; } } [Serializable, NetSerializable] public sealed class StoreRequestUpdateInterfaceMessage : BoundUserInterfaceMessage { } [Serializable, NetSerializable] public sealed class StoreBuyListingMessage : BoundUserInterfaceMessage { public ListingData Listing; public StoreBuyListingMessage(ListingData listing) { Listing = listing; } } [Serializable, NetSerializable] public sealed class StoreRequestWithdrawMessage : BoundUserInterfaceMessage { public string Currency; public int Amount; public StoreRequestWithdrawMessage(string currency, int amount) { Currency = currency; Amount = amount; } } /// /// Used when the refund button is pressed /// [Serializable, NetSerializable] public sealed class StoreRequestRefundMessage : BoundUserInterfaceMessage { }