using Content.Shared.Chemistry.Components; using Content.Shared.Chemistry.Reagent; using Content.Shared.Destructible.Thresholds; using Robust.Shared.Prototypes; namespace Content.Server.Xenoarchaeology.Artifact.XAE.Components; /// /// This is used for an artifact that creates a puddle of /// random chemicals upon being triggered. /// [RegisterComponent, Access(typeof(XAECreatePuddleSystem))] public sealed partial class XAECreatePuddleComponent : Component { /// /// The solution where all the chemicals are stored. /// [DataField(required: true), ViewVariables(VVAccess.ReadWrite)] public Solution ChemicalSolution = default!; /// /// The different chemicals that can be spawned by this effect. /// [DataField] public List> PossibleChemicals = new(); /// /// The number of chemicals in the puddle. /// [DataField] public MinMax ChemAmount = new MinMax(1, 3); /// /// List of reagents selected for this node. Selected ones are chosen on first activation /// and are picked from and is calculated separately for each node. /// [DataField] public List>? SelectedChemicals; /// /// Marker, if entity where this component is placed should have description replaced with selected chemicals /// on component init. /// [DataField] public bool ReplaceDescription; }