using Content.Shared._CP14.Skill.Components; using Content.Shared._CP14.Skill.Prototypes; using Robust.Shared.Prototypes; namespace Content.Shared._CP14.Skill.Restrictions; public sealed partial class NeedPrerequisite : CP14SkillRestriction { [DataField(required: true)] public ProtoId Prerequisite = new(); public override bool Check(IEntityManager entManager, EntityUid target) { if (!entManager.TryGetComponent(target, out var skillStorage)) return false; var learned = skillStorage.LearnedSkills; return learned.Contains(Prerequisite); } public override string GetDescription(IEntityManager entManager, IPrototypeManager protoManager) { var skillSystem = entManager.System(); return Loc.GetString("cp14-skill-req-prerequisite", ("name", skillSystem.GetSkillName(Prerequisite))); } }