using rjwquirks.Modules.Shared.PawnSelectors; using System.Collections.Generic; using Verse; namespace rjwquirks.Modules.Shared.PartnerSelectors { public class LogicalNot : PartnerSelector { public IPartnerSelector negated; public override bool PartnerSatisfies(Pawn pawn, Pawn partner) => !negated.PartnerSatisfies(pawn, partner); public override IEnumerable ConfigErrors() { foreach (string error in base.ConfigErrors()) { yield return error; } if (negated == null) { yield return " is empty"; } else { foreach (string error in negated.ConfigErrors()) { yield return error; } } } } }