using Content.Shared.FixedPoint; using Robust.Shared.Prototypes; namespace Content.Shared.Store.Components; /// /// Identifies a component that can be inserted into a store /// to increase its balance. /// /// /// Note that if this entity is a stack of items, then this is meant to represent the value per stack item, not /// the whole stack. This also means that in general, the actual value should not be modified from the initial /// prototype value because otherwise stack merging/splitting may modify the total value. /// [RegisterComponent] public sealed partial class CurrencyComponent : Component { /// /// The value of the currency. /// The string is the currency type that will be added. /// The FixedPoint2 is the value of each individual currency entity. /// /// /// Note that if this entity is a stack of items, then this is meant to represent the value per stack item, not /// the whole stack. This also means that in general, the actual value should not be modified from the initial /// prototype value /// because otherwise stack merging/splitting may modify the total value. /// [DataField(required: true)] public Dictionary, FixedPoint2> Price = new(); }