| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using Content.Shared.Whitelist;
- using Robust.Shared.Prototypes;
- namespace Content.Shared.Traits;
- /// <summary>
- /// Describes a trait.
- /// </summary>
- [Prototype]
- public sealed partial class TraitPrototype : IPrototype
- {
- [ViewVariables]
- [IdDataField]
- public string ID { get; private set; } = default!;
- /// <summary>
- /// The name of this trait.
- /// </summary>
- [DataField]
- public LocId Name { get; private set; } = string.Empty;
- /// <summary>
- /// The description of this trait.
- /// </summary>
- [DataField]
- public LocId? Description { get; private set; }
- /// <summary>
- /// Don't apply this trait to entities this whitelist IS NOT valid for.
- /// </summary>
- [DataField]
- public EntityWhitelist? Whitelist;
- /// <summary>
- /// Don't apply this trait to entities this whitelist IS valid for. (hence, a blacklist)
- /// </summary>
- [DataField]
- public EntityWhitelist? Blacklist;
- /// <summary>
- /// The components that get added to the player, when they pick this trait.
- /// </summary>
- [DataField]
- public ComponentRegistry Components { get; private set; } = default!;
- /// <summary>
- /// Gear that is given to the player, when they pick this trait.
- /// </summary>
- [DataField]
- public EntProtoId? TraitGear;
- /// <summary>
- /// Trait Price. If negative number, points will be added.
- /// </summary>
- [DataField]
- public int Cost = 0;
- /// <summary>
- /// Adds a trait to a category, allowing you to limit the selection of some traits to the settings of that category.
- /// </summary>
- [DataField]
- public ProtoId<TraitCategoryPrototype>? Category;
- }
|