RoleLoadoutPrototype.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Content.Shared.Dataset;
  2. using Robust.Shared.Prototypes;
  3. namespace Content.Shared.Preferences.Loadouts;
  4. /// <summary>
  5. /// Corresponds to a Job / Antag prototype and specifies loadouts
  6. /// </summary>
  7. [Prototype]
  8. public sealed partial class RoleLoadoutPrototype : IPrototype
  9. {
  10. /*
  11. * Separate to JobPrototype / AntagPrototype as they are turning into messy god classes.
  12. */
  13. [IdDataField]
  14. public string ID { get; private set; } = string.Empty;
  15. /// <summary>
  16. /// Can the user edit their entity name for this role loadout?
  17. /// </summary>
  18. [DataField]
  19. public bool CanCustomizeName;
  20. /// <summary>
  21. /// Should we use a random name for this loadout?
  22. /// </summary>
  23. [DataField]
  24. public ProtoId<LocalizedDatasetPrototype>? NameDataset;
  25. // Not required so people can set their names.
  26. /// <summary>
  27. /// Groups that comprise this role loadout.
  28. /// </summary>
  29. [DataField]
  30. public List<ProtoId<LoadoutGroupPrototype>> Groups = new();
  31. /// <summary>
  32. /// How many points are allotted for this role loadout prototype.
  33. /// </summary>
  34. [DataField]
  35. public int? Points;
  36. }