using Content.Server.Objectives.Systems; using Content.Shared.EntityConditions; using Content.Shared.Objectives.Systems; namespace Content.Server.Objectives.Components; /// /// Sets the target for to a random person from a pool and filters. /// /// /// Don't copy paste this for a new objective, if you need a new filter just make a new filter and set it in YAML. /// [RegisterComponent, Access(typeof(PickObjectiveTargetSystem))] public sealed partial class PickRandomPersonComponent : Component { /// /// A pool to pick potential targets from. /// [DataField] public IMindPool Pool = new AliveHumansPool(); /// /// EntityConditions to apply to . /// If these conditions pass the mind is valid. /// [DataField] [AlwaysPushInheritance] public EntityCondition[] Conditions; }