using Robust.Shared.Prototypes; using Robust.Shared.Utility; namespace Content.Shared.Research.Prototypes; /// /// This is a prototype for a research discipline, a category /// that governs how s are unlocked. /// [Prototype] public sealed partial class TechDisciplinePrototype : IPrototype { /// [IdDataField] public string ID { get; private set; } = default!; /// /// Player-facing name. /// Supports locale strings. /// [DataField("name", required: true)] public string Name = string.Empty; /// /// A color used for UI /// [DataField("color", required: true)] public Color Color; /// /// An icon used to visually represent the discipline in UI. /// [DataField("icon")] public SpriteSpecifier Icon = default!; /// /// For each tier a discipline supports, what percentage /// of the previous tier must be unlocked for it to become available /// [DataField("tierPrerequisites", required: true)] public Dictionary TierPrerequisites = new(); /// /// Purchasing this tier of technology causes a server to become "locked" to this discipline. /// [DataField("lockoutTier")] public int LockoutTier = 3; }