rjw_menstruation/1.4/source/RJW_Menstruation/RJW_Menstruation/QuirkUtility.cs

38 lines
1.2 KiB
C#

using rjw;
using Verse;
namespace RJW_Menstruation
{
public static class QuirkUtility
{
// All quirks used in Menstruation
private enum Quirks
{
Breeder,
ImpregnationFetish,
Messy,
Teratophile,
}
private static bool HasQuirk(Pawn pawn, Quirks quirk)
{
switch (quirk)
{
case Quirks.Breeder:
return pawn.Has(Quirk.Breeder);
case Quirks.ImpregnationFetish:
return pawn.Has(Quirk.ImpregnationFetish);
case Quirks.Messy:
return pawn.Has(Quirk.Messy);
case Quirks.Teratophile:
return pawn.Has(Quirk.Teratophile);
default:
return false;
}
}
public static bool IsBreeder(this Pawn pawn) => HasQuirk(pawn, Quirks.Breeder);
public static bool HasImpregnationFetish(this Pawn pawn) => HasQuirk(pawn, Quirks.ImpregnationFetish);
public static bool IsMessy(this Pawn pawn) => HasQuirk(pawn, Quirks.Messy);
public static bool IsTeratophile(this Pawn pawn) => HasQuirk(pawn, Quirks.Teratophile);
}
}