diff --git a/1.3/Assemblies/RJW_Menstruation.dll b/1.3/Assemblies/RJW_Menstruation.dll index ba57e6b..230fe1a 100644 Binary files a/1.3/Assemblies/RJW_Menstruation.dll and b/1.3/Assemblies/RJW_Menstruation.dll differ diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/Hediff_MultiplePregnancy.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/Hediff_MultiplePregnancy.cs index 1e0b9ca..73521e2 100644 --- a/1.3/source/RJW_Menstruation/RJW_Menstruation/Hediff_MultiplePregnancy.cs +++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/Hediff_MultiplePregnancy.cs @@ -423,7 +423,7 @@ namespace RJW_Menstruation Pawn baby = PawnGenerator.GeneratePawn(request); if (baby != null) { - if (xxx.is_human(baby)) + if (xxx.is_human(baby) || (baby.relations != null && !RJWSettings.Disable_bestiality_pregnancy_relations)) { baby.SetMother(mother); if (mother != father) @@ -434,23 +434,15 @@ namespace RJW_Menstruation baby.relations.AddDirectRelation(PawnRelationDefOf.Parent, father); } } - + } + if (xxx.is_human(baby)) + { // Ensure the same inherited traits are chosen each run // Has to happen right here so GeneratePawn up there still gets unique results Rand.PushState(traitSeed); // With a seed just to make sure that fraternal twins *don't* get trait-duped UpdateTraits(baby, parentTraits); Rand.PopState(); } - else if (baby.relations != null && !RJWSettings.Disable_bestiality_pregnancy_relations) - { - baby.relations.AddDirectRelation(VariousDefOf.Relation_birthgiver, mother); - mother.relations.AddDirectRelation(VariousDefOf.Relation_spawn, baby); - if (mother != father) - { - baby.relations.AddDirectRelation(VariousDefOf.Relation_birthgiver, father); - father.relations.AddDirectRelation(VariousDefOf.Relation_spawn, baby); - } - } } else Log.Error("Baby not generated. Request: " + request.ToString()); return baby; diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/VariousDefOf.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/VariousDefOf.cs index cb1faee..40ac6df 100644 --- a/1.3/source/RJW_Menstruation/RJW_Menstruation/VariousDefOf.cs +++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/VariousDefOf.cs @@ -22,6 +22,7 @@ namespace RJW_Menstruation public static readonly HediffDef Hediff_Estrus_Concealed = DefDatabase.GetNamed("Hediff_Estrus_Concealed"); public static readonly HediffDef Hediff_ASA = DefDatabase.GetNamed("Hediff_ASA"); public static readonly StatDef MaxAbsorbable = DefDatabase.GetNamed("MaxAbsorbable"); + // Obsolete, kept for compatibility for now public static readonly PawnRelationDef Relation_birthgiver = DefDatabase.AllDefs.FirstOrDefault(d => d.defName == "RJW_Sire"); public static readonly PawnRelationDef Relation_spawn = DefDatabase.AllDefs.FirstOrDefault(d => d.defName == "RJW_Pup"); public static readonly NeedDef SexNeed = DefDatabase.GetNamed("Sex");