1
0

ChemicalPayloadComponent.cs 782 B

123456789101112131415161718192021222324252627282930313233
  1. using Content.Shared.Containers.ItemSlots;
  2. using Robust.Shared.Serialization;
  3. namespace Content.Shared.Payload.Components;
  4. /// <summary>
  5. /// Chemical payload that mixes the solutions of two drain-able solution containers when triggered.
  6. /// </summary>
  7. [RegisterComponent]
  8. public sealed partial class ChemicalPayloadComponent : Component
  9. {
  10. [DataField("beakerSlotA", required: true)]
  11. public ItemSlot BeakerSlotA = new();
  12. [DataField("beakerSlotB", required: true)]
  13. public ItemSlot BeakerSlotB = new();
  14. }
  15. [Serializable, NetSerializable]
  16. public enum ChemicalPayloadVisuals : byte
  17. {
  18. Slots
  19. }
  20. [Flags]
  21. [Serializable, NetSerializable]
  22. public enum ChemicalPayloadFilledSlots : byte
  23. {
  24. None = 0,
  25. Left = 1 << 0,
  26. Right = 1 << 1,
  27. Both = Left | Right,
  28. }