diff --git a/1.5/Assemblies/RJW_Menstruation.dll b/1.5/Assemblies/RJW_Menstruation.dll index 6b43c1d..87704b7 100644 Binary files a/1.5/Assemblies/RJW_Menstruation.dll and b/1.5/Assemblies/RJW_Menstruation.dll differ diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs index e2ec838..3b4ab9c 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_InducedOvulator.cs @@ -17,9 +17,9 @@ namespace RJW_Menstruation { protected bool hadOvulatoryStage = false; // Regardless of whether an egg was actually produced - protected override void PostInitialize() + protected override void InitializeExtraValues() { - base.PostInitialize(); + base.InitializeExtraValues(); hadOvulatoryStage |= IsEggExist; } diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs index 741fbb3..fbb0115 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs @@ -971,7 +971,7 @@ namespace RJW_Menstruation if (Pawn.HasIUD()) antisperm = 0.70f + asafactor; else antisperm = 0.0f + asafactor; - absorber = (Absorber)Pawn.apparel?.WornApparel.Find(x => x is Absorber); + absorber = (Absorber)Pawn.apparel?.WornApparel?.Find(x => x is Absorber); if (absorber != null) { absorber.WearEffect(TickInterval); @@ -1164,7 +1164,7 @@ namespace RJW_Menstruation else if (currentIntervalTicks < curStageTicks) curStageTicks = currentIntervalTicks; } if (crampPain < 0) crampPain = PainRandomizer(); - PostInitialize(); + InitializeExtraValues(); TakeLoosePregnancy(); @@ -1178,7 +1178,7 @@ namespace RJW_Menstruation Notify_UpdatedGenes(); } - protected virtual void PostInitialize() + protected virtual void InitializeExtraValues() { } @@ -1459,7 +1459,6 @@ namespace RJW_Menstruation break; case Hediff_BasePregnancy _: default: - if (Configurations.Debug) Log.Message($"Not adding to existing pregnancy {pregnancy?.GetUniqueLoadID()}"); pregnant = true; deadeggs.Add(egg); break; @@ -1480,7 +1479,7 @@ namespace RJW_Menstruation float interspeciesFactor = InterspeciesImplantFactor(egg.fertilizer); float implantChance = Configurations.ImplantationChance * ImplantChance * interspeciesFactor; Log.Message($"Fertilized egg of {Pawn} failed to implant (chance {implantChance.ToStringPercent()}, " + - (interspeciesFactor != 1.0f ? $"interspecies factor {interspeciesFactor.ToStringPercent()}, " : "") + + (interspeciesFactor < 1.0f ? $"interspecies factor {interspeciesFactor.ToStringPercent()}, " : "") + $"father {egg.fertilizer})"); } deadeggs.Add(egg); diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PeriodicOvulator.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PeriodicOvulator.cs index 662c248..62a9651 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PeriodicOvulator.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PeriodicOvulator.cs @@ -26,9 +26,9 @@ namespace RJW_Menstruation Props = (CompProperties_PeriodicOvulator)props; } - protected override void PostInitialize() + protected override void InitializeExtraValues() { - base.PostInitialize(); + base.InitializeExtraValues(); if (averageCycleIntervalTicks < 0) { averageCycleIntervalTicks = (int)(Props.cycleIntervalDays.RandomInRange * GenDate.TicksPerDay / cycleSpeed); diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Pheromones.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Pheromones.cs index cd41c92..3848b78 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Pheromones.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Pheromones.cs @@ -47,11 +47,8 @@ namespace RJW_Menstruation protected IEnumerable AffectedPawns() { - if (Pawn.GetCaravan() is Caravan caravan) - { + if(Pawn.GetCaravan() is Caravan caravan) foreach (Pawn p in caravan.PawnsListForReading.Where(p => p != Pawn)) yield return p; - yield break; - } Map mapHeld = Pawn.MapHeld; if (mapHeld == null) yield break; foreach (Pawn pawn in mapHeld.mapPawns.AllPawnsSpawned) diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PregeneratedBabies.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PregeneratedBabies.cs index 48078a1..9df33f4 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PregeneratedBabies.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_PregeneratedBabies.cs @@ -204,7 +204,7 @@ namespace RJW_Menstruation if (comp?.HasBaby ?? false) { RitualOutcomePossibility thisOutcome = outcome; - Precept_Ritual precept_Ritual = (Precept_Ritual)comp.Pawn.Ideo.GetPrecept(RimWorld.PreceptDefOf.ChildBirth); + Precept_Ritual precept_Ritual = (Precept_Ritual)comp.Pawn.Ideo.GetPrecept(PreceptDefOf.ChildBirth); float birthQuality = PregnancyUtility.GetBirthQualityFor(mother); do { diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/Hediff_Estrus.cs b/1.5/source/RJW_Menstruation/RJW_Menstruation/Hediff_Estrus.cs index 8c306a9..26fa191 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/Hediff_Estrus.cs +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/Hediff_Estrus.cs @@ -30,8 +30,7 @@ namespace RJW_Menstruation base.PostAdd(dinfo); if (IsVisible) { - List removals = new List (); - pawn.health.hediffSet.GetHediffs(ref removals, hediff => hediff.def == VariousDefOf.Hediff_Estrus_Concealed); + List removals = pawn.health.hediffSet.hediffs.Where(hediff => hediff.def == VariousDefOf.Hediff_Estrus_Concealed).ToList(); foreach (Hediff concealedEstrus in removals) { pawn.health.RemoveHediff(concealedEstrus); diff --git a/1.5/source/RJW_Menstruation/RJW_Menstruation/RJW_Menstruation.csproj b/1.5/source/RJW_Menstruation/RJW_Menstruation/RJW_Menstruation.csproj index 359ea04..6dfaeca 100644 --- a/1.5/source/RJW_Menstruation/RJW_Menstruation/RJW_Menstruation.csproj +++ b/1.5/source/RJW_Menstruation/RJW_Menstruation/RJW_Menstruation.csproj @@ -174,7 +174,7 @@ - 2.3.2 + 2.3.1.1 runtime compile; build; native; contentfiles; analyzers; buildtransitive