FoldableClothingComponent.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using Content.Shared.Humanoid;
  2. using Content.Shared.Inventory;
  3. using Robust.Shared.GameStates;
  4. namespace Content.Shared.Clothing.Components;
  5. [RegisterComponent, NetworkedComponent]
  6. public sealed partial class FoldableClothingComponent : Component
  7. {
  8. /// <summary>
  9. /// Which slots does this fit into when folded?
  10. /// </summary>
  11. [DataField]
  12. public SlotFlags? FoldedSlots;
  13. /// <summary>
  14. /// Which slots does this fit into when unfolded?
  15. /// </summary>
  16. [DataField]
  17. public SlotFlags? UnfoldedSlots;
  18. /// <summary>
  19. /// What equipped prefix does this have while in folded form?
  20. /// </summary>
  21. [DataField]
  22. public string? FoldedEquippedPrefix;
  23. /// <summary>
  24. /// What held prefix does this have while in folded form?
  25. /// </summary>
  26. [DataField]
  27. public string? FoldedHeldPrefix;
  28. /// <summary>
  29. /// Which layers does this hide when Unfolded? See <see cref="HumanoidVisualLayers"/> and <see cref="HideLayerClothingComponent"/>
  30. /// </summary>
  31. [DataField]
  32. public HashSet<HumanoidVisualLayers>? UnfoldedHideLayers = new();
  33. /// <summary>
  34. /// Which layers does this hide when folded? See <see cref="HumanoidVisualLayers"/> and <see cref="HideLayerClothingComponent"/>
  35. /// </summary>
  36. [DataField]
  37. public HashSet<HumanoidVisualLayers>? FoldedHideLayers = new();
  38. }