From e8710149e5ccbf97d0d4890ac2fbd60fddc6043f Mon Sep 17 00:00:00 2001 From: lutepickle <28810-lutepickle@users.noreply.gitgud.io> Date: Mon, 23 Oct 2023 09:57:52 -0700 Subject: [PATCH] Refactor the egg removing logic to make it a bit clearer --- .../HediffComps/HediffComp_Menstruation.cs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) 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 59d035a..18f35d8 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 @@ -1508,9 +1508,21 @@ namespace RJW_Menstruation } } - if (pregnant && - (Configurations.PregnancySource != Configurations.PregnancyType.MultiplePregnancy || !Configurations.EnableHeteroOvularTwins) && - (Configurations.PregnancySource != Configurations.PregnancyType.Biotech || !Configurations.EnableBiotechTwins || !Configurations.EnableHeteroOvularTwins)) + bool clearAllEggs = true; + switch (Configurations.PregnancySource) + { + case Configurations.PregnancyType.BaseRJW: + clearAllEggs = true; + break; + case Configurations.PregnancyType.MultiplePregnancy: + clearAllEggs = !Configurations.EnableHeteroOvularTwins; + break; + case Configurations.PregnancyType.Biotech: + clearAllEggs = !(Configurations.EnableBiotechTwins && Configurations.EnableHeteroOvularTwins); + break; + } + + if (pregnant && clearAllEggs) eggs.Clear(); else eggs.RemoveAll(egg => deadeggs.Contains(egg));