mirror of
				https://gitgud.io/lutepickle/rjw_menstruation.git
				synced 2024-08-14 22:46:52 +00:00 
			
		
		
		
	Track the changing hediff through pregnancy and labor
This commit is contained in:
		
							parent
							
								
									483ab2f7c0
								
							
						
					
					
						commit
						2846117881
					
				
					 3 changed files with 52 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -0,0 +1,50 @@
 | 
			
		|||
using HarmonyLib;
 | 
			
		||||
using RimWorld;
 | 
			
		||||
using Verse;
 | 
			
		||||
 | 
			
		||||
namespace RJW_Menstruation
 | 
			
		||||
{
 | 
			
		||||
    [HarmonyPatch(typeof(Hediff_Pregnant), "Miscarry")]
 | 
			
		||||
    public class Miscarry_Patch
 | 
			
		||||
    {
 | 
			
		||||
        public static void Postfix(Hediff_Pregnant __instance)
 | 
			
		||||
        {
 | 
			
		||||
            HediffComp_Menstruation comp = __instance.GetMenstruationCompFromPregnancy();
 | 
			
		||||
            if (comp == null) return;
 | 
			
		||||
            comp.Pregnancy = null;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [HarmonyPatch(typeof(Hediff_Pregnant), nameof(Hediff_Pregnant.StartLabor))]
 | 
			
		||||
    public class StartLabor_Patch
 | 
			
		||||
    {
 | 
			
		||||
        public static void Postfix(Hediff_Pregnant __instance)
 | 
			
		||||
        {
 | 
			
		||||
            HediffComp_Menstruation comp = __instance.GetMenstruationCompFromPregnancy();
 | 
			
		||||
            if (comp == null) return;
 | 
			
		||||
            comp.Pregnancy = __instance.pawn.health.hediffSet.GetFirstHediffOfDef(HediffDefOf.PregnancyLabor);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [HarmonyPatch(typeof(Hediff_Labor), nameof(Hediff_Labor.PreRemoved))]
 | 
			
		||||
    public class Labor_PreRemoved_Patch
 | 
			
		||||
    {
 | 
			
		||||
        public static void PostFix(Hediff_Labor __instance)
 | 
			
		||||
        {
 | 
			
		||||
            HediffComp_Menstruation comp = __instance.GetMenstruationCompFromPregnancy();
 | 
			
		||||
            if (comp == null) return;
 | 
			
		||||
            comp.Pregnancy = __instance.pawn.health.hediffSet.GetFirstHediffOfDef(HediffDefOf.PregnancyLaborPushing);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [HarmonyPatch(typeof(Hediff_LaborPushing), nameof(Hediff_LaborPushing.PreRemoved))]
 | 
			
		||||
    public class LaborPushing_PreRemoved_Patch
 | 
			
		||||
    {
 | 
			
		||||
        public static void PostFix(Hediff_LaborPushing __instance)
 | 
			
		||||
        {
 | 
			
		||||
            HediffComp_Menstruation comp = __instance.GetMenstruationCompFromPregnancy();
 | 
			
		||||
            if (comp == null) return;
 | 
			
		||||
            comp.Pregnancy = null;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -70,6 +70,7 @@
 | 
			
		|||
    <Compile Include="HediffComps\MenstruationUtility.cs" />
 | 
			
		||||
    <Compile Include="Hediff_Estrus.cs" />
 | 
			
		||||
    <Compile Include="IngestionOutcomeDoers.cs" />
 | 
			
		||||
    <Compile Include="Patch\Biotech_Patch.cs" />
 | 
			
		||||
    <Compile Include="Patch\GC_Patch.cs" />
 | 
			
		||||
    <Compile Include="Recipe_Surgery.cs" />
 | 
			
		||||
    <Compile Include="StatParts.cs" />
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
Version 1.0.8.1
 | 
			
		||||
 - Added the option for humans to start Biotech pregnancies if the DLC is enabled. If set, non-humans will use the old multiple pregnancy instead.
 | 
			
		||||
 - Properly track biotech pregnancy through labor.
 | 
			
		||||
 | 
			
		||||
Version 1.0.8.0
 | 
			
		||||
 - Support for RimWorld 1.4. All future changes to Menstruation will only be for Rimworld 1.4.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue