LoadoutGroupPrototype.cs 968 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using Robust.Shared.Prototypes;
  2. namespace Content.Shared.Preferences.Loadouts;
  3. /// <summary>
  4. /// Corresponds to a set of loadouts for a particular slot.
  5. /// </summary>
  6. [Prototype]
  7. public sealed partial class LoadoutGroupPrototype : IPrototype
  8. {
  9. [IdDataField]
  10. public string ID { get; private set; } = string.Empty;
  11. /// <summary>
  12. /// User-friendly name for the group.
  13. /// </summary>
  14. [DataField(required: true)]
  15. public LocId Name;
  16. /// <summary>
  17. /// Minimum number of loadouts that need to be specified for this category.
  18. /// </summary>
  19. [DataField]
  20. public int MinLimit = 1;
  21. /// <summary>
  22. /// Maximum limit for the category.
  23. /// </summary>
  24. [DataField]
  25. public int MaxLimit = 1;
  26. /// <summary>
  27. /// Hides the loadout group from the player.
  28. /// </summary>
  29. [DataField]
  30. public bool Hidden;
  31. [DataField(required: true)]
  32. public List<ProtoId<LoadoutPrototype>> Loadouts = new();
  33. }