ScoopableSolutionComponent.cs 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. using Content.Shared.Chemistry.EntitySystems;
  2. using Robust.Shared.GameStates;
  3. namespace Content.Shared.Chemistry.Components;
  4. /// <summary>
  5. /// Basically reverse spiking, instead of using the solution-entity on a beaker, you use the beaker on the solution-entity.
  6. /// If there is not enough volume it will stay in the solution-entity rather than spill onto the floor.
  7. /// </summary>
  8. [RegisterComponent, NetworkedComponent, Access(typeof(ScoopableSolutionSystem))]
  9. public sealed partial class ScoopableSolutionComponent : Component
  10. {
  11. /// <summary>
  12. /// Solution name that can be scooped from.
  13. /// </summary>
  14. [DataField]
  15. public string Solution = "default";
  16. /// <summary>
  17. /// If true, when the whole solution is scooped up the entity will be deleted.
  18. /// </summary>
  19. [DataField]
  20. public bool Delete = true;
  21. /// <summary>
  22. /// Popup to show the user when scooping.
  23. /// Passed entities "scooped" and "beaker".
  24. /// </summary>
  25. [DataField]
  26. public LocId Popup = "scoopable-component-popup";
  27. }