using Content.Shared.Chemistry.Reagent; using Content.Shared.FixedPoint; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; namespace Content.Shared.Materials; /// /// This is used for assigning an innate material/chemical composition to an entity. /// These aren't materials per se, but rather the materials which "make up" an entity. /// This also isn't something that should exist simultaneously with . /// /// /// The reason for duel material/chemical is for the eventual /// combination of the two systems. /// [RegisterComponent] public sealed partial class PhysicalCompositionComponent : Component { /// /// The materials that "make up" this entity /// [DataField("materialComposition", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary MaterialComposition = new(); /// /// The chemicals that "make up" this entity /// [DataField("chemicalComposition", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary ChemicalComposition = new(); // TODO use ReagentQuantity[] }