mirror of
https://gitgud.io/lutepickle/rjw_menstruation.git
synced 2024-08-14 22:46:52 +00:00
40 lines
1.2 KiB
C#
40 lines
1.2 KiB
C#
using HarmonyLib;
|
|
using rjw;
|
|
using RJWSexperience;
|
|
using System.Linq;
|
|
using Verse;
|
|
using Verse.AI;
|
|
|
|
namespace RJW_Menstruation.Sexperience
|
|
{
|
|
[HarmonyPatch(typeof(WorkGiver_CleanSelf))]
|
|
public static class RJW_Patch_WorkGiver_CleanSelf
|
|
{
|
|
[HarmonyPrefix]
|
|
[HarmonyPatch("HasJobOnThing")]
|
|
public static bool HasJobOnThing(Pawn pawn, ref bool __result)
|
|
{
|
|
if (pawn.GetMenstruationComps().Any(comp => comp.DoCleanWomb && comp.TotalCumPercent > 0.001f) && pawn.Map.listerBuildings.ColonistsHaveBuilding(VariousDefOf.CumBucket))
|
|
{
|
|
__result = true;
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
[HarmonyPostfix]
|
|
[HarmonyPatch("JobOnThing")]
|
|
public static void JobOnThing(Pawn pawn, ref Job __result)
|
|
{
|
|
if (pawn.GetMenstruationComps().Any(comp => comp.DoCleanWomb && comp.TotalCumPercent > 0.001f))
|
|
{
|
|
|
|
Building_CumBucket bucket = pawn.FindClosestBucket();
|
|
if (bucket != null)
|
|
{
|
|
__result = JobMaker.MakeJob(VariousDefOf.VaginaWashingwithBucket, null, bucket, bucket.Position);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|