38 lines
1.2 KiB
C#
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);
|
|
}
|
|
}
|