diff --git a/1.4/Assemblies/RJW_Menstruation.dll b/1.4/Assemblies/RJW_Menstruation.dll index 3ed15f2..85e2d73 100644 Binary files a/1.4/Assemblies/RJW_Menstruation.dll and b/1.4/Assemblies/RJW_Menstruation.dll differ diff --git a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs index 15e013b..d069069 100644 --- a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs +++ b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs @@ -55,7 +55,12 @@ namespace RJW_Menstruation protected override void AfterCumIn(Pawn cummer) { base.AfterCumIn(cummer); - if (curStage == Stage.Follicular) GoNextStage(Stage.Ovulatory); + switch (curStage) + { + case Stage.Follicular: + GoNextStage(Stage.Ovulatory); + break; + } } public override bool IsDangerDay diff --git a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs index 78e7a77..2bdf2bd 100644 --- a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs +++ b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs @@ -242,15 +242,24 @@ namespace RJW_Menstruation public float TotalCum { - get => cums?.Sum(cum => cum.Volume) ?? 0; + get + { + return cums?.Sum(cum => cum.Volume) ?? 0; + } } public float TotalFertCum { - get => cums?.Sum(cum => cum.FertVolume) ?? 0; + get + { + return cums?.Sum(cum => cum.FertVolume) ?? 0; + } } public float TotalCumPercent { - get => cums?.Sum(cum => cum.Volume) / Props.maxCumCapacity ?? 0; + get + { + return cums?.Sum(cum => cum.Volume) / Props.maxCumCapacity ?? 0; + } } public float CumCapacity { @@ -266,7 +275,7 @@ namespace RJW_Menstruation { get { - if (QuirkUtility.HasQuirk(Pawn, QuirkUtility.Quirks.Breeder)) return 0.5f; + if (xxx.has_quirk(Pawn, "Breeder")) return 0.5f; return 1.0f; } @@ -440,13 +449,25 @@ namespace RJW_Menstruation public string WombTex { - get => customwombtex ?? Props.wombTex; - set => customwombtex = value; + get + { + return customwombtex ?? Props.wombTex; + } + set + { + customwombtex = value; + } } public string VagTex { - get => customvagtex ?? Props.vagTex; - set => customvagtex = value; + get + { + return customvagtex ?? Props.vagTex; + } + set + { + customvagtex = value; + } } public string GetFertilizingInfo { @@ -499,12 +520,18 @@ namespace RJW_Menstruation } public bool IsEggExist { - get => !eggs.NullOrEmpty(); + get + { + return !eggs.NullOrEmpty(); + } } public int EggLifespanHours { - get => eggLifeSpanHours; + get + { + return eggLifeSpanHours; + } } public virtual bool IsDangerDay @@ -528,7 +555,10 @@ namespace RJW_Menstruation } public int GetNumOfEggs { - get => eggs?.Count ?? 0; + get + { + return eggs?.Count ?? 0; + } } public Color BloodColor { @@ -543,6 +573,7 @@ namespace RJW_Menstruation { return Colors.blood; } + } } @@ -556,12 +587,18 @@ namespace RJW_Menstruation } return originvagsize ?? 0.1f; } - set => originvagsize = value; + set + { + originvagsize = value; + } } public float CurStageIntervalHours { - get => currentIntervalHours; + get + { + return currentIntervalHours; + } } public float StageProgress diff --git a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/MenstruationUtility.cs b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/MenstruationUtility.cs index 833d5e9..d67fbb4 100644 --- a/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/MenstruationUtility.cs +++ b/1.4/source/RJW_Menstruation/RJW_Menstruation/HediffComps/MenstruationUtility.cs @@ -231,11 +231,11 @@ namespace RJW_Menstruation job.Sexprops != null && !job.Sexprops.usedCondom && (job.Sexprops.sexType == xxx.rjwSextype.Vaginal || job.Sexprops.sexType == xxx.rjwSextype.DoublePenetration)) - return ContentFinder.Get((comp.OvulationChance >= ovaryChanceToShow_01) ? "Ovaries/Ovary_01" : "Ovaries/Ovary_00", true); + return ContentFinder.Get((comp.OvulationChance >= ovaryChanceToShow_01) ? "Ovaries/Ovary_01" : "Ovaries_Ovary_00", true); else break; } if (comp.curStageHrs > comp.CurStageIntervalHours - 30) // Approximate time for ovulation to occur - return ContentFinder.Get((comp.OvulationChance >= ovaryChanceToShow_01) ? "Ovaries/Ovary_01" : "Ovaries/Ovary_00", true); + return ContentFinder.Get((comp.OvulationChance >= ovaryChanceToShow_01) ? "Ovaries/Ovary_01" : "Ovaries_Ovary_00", true); else break; case HediffComp_Menstruation.Stage.Ovulatory: if (!includeOvary) break; diff --git a/1.4/source/RJW_Menstruation/RJW_Menstruation/Patch/Biotech_Patch.cs b/1.4/source/RJW_Menstruation/RJW_Menstruation/Patch/Biotech_Patch.cs index 37e4f6a..6a75e94 100644 --- a/1.4/source/RJW_Menstruation/RJW_Menstruation/Patch/Biotech_Patch.cs +++ b/1.4/source/RJW_Menstruation/RJW_Menstruation/Patch/Biotech_Patch.cs @@ -200,16 +200,19 @@ namespace RJW_Menstruation if (!VariousDefOf.WombGenes.Contains(gene.def)) return true; bool keepGene; if (PawnGenerator.IsBeingGenerated(___pawn)) - // During pawn generation, the vagina hediff doesn't exist yet, so use gender to decide instead + { + // During pawn generation, the vagina hediff doesn't exist yet + // So use gender to decide instead // Not the most accurate, but close enough keepGene = ___pawn.gender == Gender.Female; + } else keepGene = ___pawn.GetMenstruationComps().Any(); if (!keepGene) __result = null; return keepGene; } } - [HarmonyPatch(typeof(Pawn_GeneTracker), "Notify_GenesChanged")] + [HarmonyPatch(typeof(Pawn_GeneTracker), "Notify_GenesChanged")] public class Notify_GenesChanged_Patch { public static void Postfix(Pawn_GeneTracker __instance) diff --git a/changelogs.txt b/changelogs.txt index 9571192..16390f2 100644 --- a/changelogs.txt +++ b/changelogs.txt @@ -1,5 +1,4 @@ Version 1.0.9.0 - - Fix errors when opening the womb dialog of some low fertility pawns. - Menstruation-related genes will now stay on females during initial pawn setup. Version 1.0.8.9