Updated to refactored quirk removal

Updated to parity with quirk removal updates that added helper functions
This commit is contained in:
Matthew 2023-02-20 15:50:53 -05:00
parent 7585da099c
commit be5f2bdf9a
17 changed files with 151 additions and 395 deletions

View file

@ -1,44 +1,44 @@
using rjw;
using rjwquirks.Data;
using rjwquirks.Modules.Shared.PawnSelectors;
using System.Collections.Generic;
using Verse;
namespace rjwquirks.Modules.Shared.PawnSelectors
{
public class HasRaceTag : PawnSelector
{
/// <summary>
/// For def load only. Use RaceTag property
/// </summary>
public string raceTag;
public class HasRaceTag : PawnSelector
{
/// <summary>
/// For def load only. Use RaceTag property
/// </summary>
public string raceTag;
public RaceTags RaceTag
{
get
{
if (RaceTags.TryParse(raceTag, out RaceTags tag))
return tag;
return null;
}
}
public RaceTag RaceTag
{
get
{
if (RaceTag.TryParse(raceTag, out RaceTag tag))
return tag;
return null;
}
}
public override bool PawnSatisfies(Pawn pawn) => pawn.HasRaceTag(RaceTag);
public override bool PawnSatisfies(Pawn pawn) => pawn.Has(RaceTag);
public override IEnumerable<string> ConfigErrors()
{
foreach (string error in base.ConfigErrors())
{
yield return error;
}
public override IEnumerable<string> ConfigErrors()
{
foreach (string error in base.ConfigErrors())
{
yield return error;
}
if (raceTag.NullOrEmpty())
{
yield return "<raceTag> is empty";
}
else if (!RaceTags.TryParse(raceTag, out _))
if (raceTag.NullOrEmpty())
{
yield return "<raceTag> is empty";
}
else if (!RaceTag.TryParse(raceTag, out _))
{
yield return $"\"{raceTag}\" is not a valid RaceTag";
}
}
}
}
}