diff --git a/Common/Assemblies/Rjw-Genes.dll b/Common/Assemblies/Rjw-Genes.dll index 6de7cfc..abefb5f 100644 Binary files a/Common/Assemblies/Rjw-Genes.dll and b/Common/Assemblies/Rjw-Genes.dll differ diff --git a/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml b/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml index c9d3c17..ca5124a 100644 --- a/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml +++ b/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml @@ -1,7 +1,6 @@ - rjw_genes_genitalia_extras false @@ -15,6 +14,8 @@ rjw_genes_extra_penis + rjw_genes_genitalia_extras + Males of this species grow an additional penis . Genes/Icons/extra_male RJW_Genes.Gene_ExtraPenis @@ -27,6 +28,7 @@ rjw_genes_no_penis + rjw_genes_genitalia_extras Males of this do not have a penis. Genes/Icons/No_Male_Genitalia RJW_Genes.Gene_NoPenis @@ -40,6 +42,7 @@ rjw_genes_extra_vagina + rjw_genes_genitalia_extras Females of this species grow an additional vagina . Genes/Icons/Extra_Vagina RJW_Genes.Gene_ExtraVagina @@ -52,6 +55,7 @@ rjw_genes_no_vagina + rjw_genes_genitalia_extras Females of this do not have a vagina. Genes/Icons/No_Vagina RJW_Genes.Gene_NoVagina @@ -65,6 +69,7 @@ rjw_genes_extra_breasts + rjw_genes_genitalia_extras Females of this species grow an additional pair of breasts . Genes/Icons/Extra_Breasts RJW_Genes.Gene_ExtraBreasts @@ -77,6 +82,7 @@ rjw_genes_no_breasts + rjw_genes_genitalia_extras Females of this do not have a pair of breasts, but only nipples. Genes/Icons/No_Breasts RJW_Genes.Gene_NoBreasts @@ -89,6 +95,7 @@ rjw_genes_extra_anus + rjw_genes_genitalia_extras This specias has an extra anus. Genes/Icons/Extra_Anus RJW_Genes.Gene_ExtraAnus @@ -101,6 +108,7 @@ rjw_genes_no_anus + rjw_genes_genitalia_extras This specias has no anus. Genes/Icons/No_Anus RJW_Genes.Gene_NoAnus @@ -113,6 +121,7 @@ rjw_genes_futa + rjw_genes_gender Males with this gene grow additional female genitalia, females grow additional male genitalia. Genes/Icons/Futa RJW_Genes.Gene_Futa @@ -126,6 +135,7 @@ rjw_genes_femboy + rjw_genes_gender Males with this gene are considered female despite having a penis Genes/Icons/Futa RJW_Genes.Gene_Femboy @@ -139,6 +149,7 @@ rjw_genes_featureless_chest + rjw_genes_genitalia_extras Carriers of this gene do not have breasts or nipples. Genes/Icons/No_Breasts RJW_Genes.Gene_FeaturelessChest @@ -151,6 +162,7 @@ rjw_genes_udder + rjw_genes_genitalia_extras Carriers of this gene have udders and breasts. Things/Mote/Heart RJW_Genes.Gene_UdderBreasts diff --git a/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml b/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml index 3335a25..5cc2e9d 100644 --- a/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml +++ b/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml @@ -7,7 +7,7 @@
  • GenitalType
  • - false + true 0 @@ -43,6 +43,7 @@ Penis Vagina Anus + Breasts 802 @@ -125,6 +126,7 @@ SlimeTentacles SlimeVagina SlimeAnus + SlimeBreasts
  • SlimeLoverQuirk @@ -319,10 +321,6 @@ - - - - rjw_genes_ovipositor_genitalia diff --git a/Common/Patches/Xenotypes/GenitaliaUpdate.xml b/Common/Patches/Xenotypes/GenitaliaUpdate.xml index e6a9681..1451a13 100644 --- a/Common/Patches/Xenotypes/GenitaliaUpdate.xml +++ b/Common/Patches/Xenotypes/GenitaliaUpdate.xml @@ -14,6 +14,8 @@
  • rjw_genes_much_cum
  • rjw_genes_zoophile
  • +
  • rjw_genes_Pig_genitalia
  • +
  • rjw_genes_human_genitalia
  • diff --git a/Common/Patches/Xenotypes/PatchPigskins.xml b/Common/Patches/Xenotypes/PatchPigskins.xml new file mode 100644 index 0000000..c49c4ac --- /dev/null +++ b/Common/Patches/Xenotypes/PatchPigskins.xml @@ -0,0 +1,17 @@ + + + + +
  • Vanilla Races Expanded - Pigskin
  • +
    + + Defs/XenotypeDef[defName="VRE_Boarskin"]/genes + +
  • rjw_genes_Pig_genitalia
  • +
  • rjw_genes_human_genitalia
  • +
  • rjw_genes_much_cum
  • +
  • rjw_genes_zoophile
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/Common/Patches/Xenotypes/PatchVRELycanthrope.xml b/Common/Patches/Xenotypes/PatchVRELycanthrope.xml new file mode 100644 index 0000000..6896e98 --- /dev/null +++ b/Common/Patches/Xenotypes/PatchVRELycanthrope.xml @@ -0,0 +1,28 @@ + + + + +
  • Vanilla Races Expanded - Lycanthrope
  • +
    + + Defs/XenotypeDef[defName="VRE_Wolfman"]/genes + +
  • rjw_genes_human_genitalia
  • +
  • rjw_genes_zoophile
  • +
    +
    +
    + + +
  • Vanilla Races Expanded - Lycanthrope
  • +
    + + Defs/XenotypeDef[defName="VRE_Lycan"]/genes + +
  • rjw_genes_canine_genitalia
  • +
  • rjw_genes_zoophile
  • +
  • rjw_genes_rapist
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/Common/Textures/Genes/Icons/sex_curiosity.png b/Common/Textures/Genes/Icons/sex_curiosity.png new file mode 100644 index 0000000..b5dcd7f Binary files /dev/null and b/Common/Textures/Genes/Icons/sex_curiosity.png differ diff --git a/Common/Textures/Genes/Icons/sex_disabled.png b/Common/Textures/Genes/Icons/sex_disabled.png new file mode 100644 index 0000000..9ce4983 Binary files /dev/null and b/Common/Textures/Genes/Icons/sex_disabled.png differ diff --git a/Common/Textures/Genes/Icons/sex_enabled.png b/Common/Textures/Genes/Icons/sex_enabled.png new file mode 100644 index 0000000..86e0a6b Binary files /dev/null and b/Common/Textures/Genes/Icons/sex_enabled.png differ diff --git a/LoadFolders.xml b/LoadFolders.xml index fd927b9..5987ccd 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -6,5 +6,13 @@
  • Mods/NotRaceSupport
  • Mods/Sanguophage
  • +
  • Mods/Saurid
  • +
  • Mods/Phytokin
  • +
  • Mods/Lycanthrope
  • +
  • Mods/Highmate
  • +
  • Mods/Genie
  • +
  • Mods/Fungoid
  • +
  • Mods/Archon
  • +
  • Mods/Android
  • \ No newline at end of file diff --git a/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml b/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml new file mode 100644 index 0000000..2977367 --- /dev/null +++ b/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml @@ -0,0 +1,11 @@ + + + + rjw_genes_AndroidConvertableGenesDefs + +
  • rjw_genes_gender
  • +
    + + +
    +
    \ No newline at end of file diff --git a/Mods/Android/Defs/GeneDefs/GeneDefs_Androids.xml b/Mods/Android/Defs/GeneDefs/GeneDefs_Androids.xml new file mode 100644 index 0000000..058d719 --- /dev/null +++ b/Mods/Android/Defs/GeneDefs/GeneDefs_Androids.xml @@ -0,0 +1,54 @@ + + + + rjw_genes_bionic_genitalia + + RJW_Genes.Gene_GenitaliaType + This piece of hardware is a set of bionic genitals of high quality + Genes/Icons/Genitalia_human + +
  • + BionicPenis + BionicVagina + BionicAnus + BionicBreasts +
  • +
    + 802 + -2 +
    + + + rjw_genes_hydrolic_genitalia + + RJW_Genes.Gene_GenitaliaType + This piece of hardware is a set of crude hydrolic genitals, at least it come with a suspension system + Genes/Icons/Genitalia_human + +
  • + HydraulicPenis + HydraulicVagina + HydraulicAnus + HydraulicBreasts +
  • +
    + 802 + + 1.12 + +
    + + + rjw_genes_SexDisabled + + Androids do not feel satisfaction from sex, and have no need to feel it. + Genes/Icons/sex_disabled + 3 + 1 + +
  • Sex
  • +
    + true +
    + +
    \ No newline at end of file diff --git a/Mods/Android/Patches/Android_Quirk_Patch.xml b/Mods/Android/Patches/Android_Quirk_Patch.xml new file mode 100644 index 0000000..52f9333 --- /dev/null +++ b/Mods/Android/Patches/Android_Quirk_Patch.xml @@ -0,0 +1,26 @@ + + + + /Defs/VREAndroids.AndroidGeneDef[defName="VREA_SyntheticBody"] + +
  • + RobotLoverQuirk +
  • +
    +
    + + /Defs/VREAndroids.AndroidGeneDef[defName="VREA_SyntheticSkin"] + +
  • + RobotLoverQuirk +
  • +
    +
    + + /Defs/GeneCategoryDef[defName="VREA_Subroutine"]/displayPriorityInXenotype + + 10 + + +
    + diff --git a/Mods/Archon/Patches/Archon_Quirk_Patch.xml b/Mods/Archon/Patches/Archon_Quirk_Patch.xml new file mode 100644 index 0000000..0f7e119 --- /dev/null +++ b/Mods/Archon/Patches/Archon_Quirk_Patch.xml @@ -0,0 +1,12 @@ + + + + /Defs/GeneDef[defName="VRE_Leatherskin"] + +
  • + SkinLoverQuirk +
  • +
    +
    +
    + diff --git a/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml b/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml new file mode 100644 index 0000000..bcb1e72 --- /dev/null +++ b/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml @@ -0,0 +1,28 @@ + + + + /Defs/GeneDef[defName="VRE_FungalCrest"] + +
  • + PlantLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_HairMushroom"] + +
  • + PlantLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_FungalFlesh"] + +
  • + PlantLoverQuirk +
  • +
    +
    +
    + diff --git a/Mods/Genie/Defs/GeneDefs/GeneDefs_Curiosity_sex.xml b/Mods/Genie/Defs/GeneDefs/GeneDefs_Curiosity_sex.xml new file mode 100644 index 0000000..98cd404 --- /dev/null +++ b/Mods/Genie/Defs/GeneDefs/GeneDefs_Curiosity_sex.xml @@ -0,0 +1,30 @@ + + + + + VRE_Curiosity + +
  • VRE_Curiosity
  • +
  • Curiosity
  • +
    + -2 + 2 +
    + + + VRE_Curiosity_Sex + + 0 + The carrier has a natural curiosity for sex which makes them gain recreation whenever they learn it. Furthermore, curiosity prevents skill loss in sex completely. + + Genes/Icons/sex_curiosity + +
  • + Sex + Sex +
  • +
    +
    + + +
    \ No newline at end of file diff --git a/Mods/Highmate/Patches/Highmate_Quirk_Patch.xml b/Mods/Highmate/Patches/Highmate_Quirk_Patch.xml new file mode 100644 index 0000000..0f69977 --- /dev/null +++ b/Mods/Highmate/Patches/Highmate_Quirk_Patch.xml @@ -0,0 +1,28 @@ + + + + /Defs/GeneDef[defName="VRE_FelineEars"] + +
  • + FurLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_FelineTail"] + +
  • + FurLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_PerfectBody"] + +
  • + SkinLoverQuirk +
  • +
    +
    +
    + diff --git a/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml b/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml new file mode 100644 index 0000000..475950c --- /dev/null +++ b/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml @@ -0,0 +1,20 @@ + + + + /Defs/GeneDef[defName="VRE_ChestFur"] + +
  • + FurLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_CanineTail"] + +
  • + FurLoverQuirk +
  • +
    +
    +
    + diff --git a/Mods/Phytokin/Patches/Phytokin_Quirk_Patch.xml b/Mods/Phytokin/Patches/Phytokin_Quirk_Patch.xml new file mode 100644 index 0000000..78089d4 --- /dev/null +++ b/Mods/Phytokin/Patches/Phytokin_Quirk_Patch.xml @@ -0,0 +1,28 @@ + + + + /Defs/GeneDef[defName="VRE_BarkSkin"] + +
  • + PlantLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_FoliageHair"] + +
  • + PlantLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRE_SapBlood"] + +
  • + PlantLoverQuirk +
  • +
    +
    +
    + diff --git a/Mods/Sanguophage/Patches/Sanguophage_Quirk_Patch.xml b/Mods/Sanguophage/Patches/Sanguophage_Quirk_Patch.xml index b594900..cf01f46 100644 --- a/Mods/Sanguophage/Patches/Sanguophage_Quirk_Patch.xml +++ b/Mods/Sanguophage/Patches/Sanguophage_Quirk_Patch.xml @@ -1,51 +1,43 @@ - + /Defs/GeneDef[defName="VRE_SanguineHair"] -
  • DemonLoverQuirk
  • -
    - + /Defs/GeneDef[defName="VRE_BatEars"] -
  • TeratophileQuirk
  • -
    - + /Defs/GeneDef[defName="VRE_UpperBatEars"] -
  • TeratophileQuirk
  • -
    - - /Defs/GeneDef[defName="VRE_Talons"]/modExtensions + + /Defs/GeneDef[defName="VRE_Talons"]
  • DemonLoverQuirk
  • - + /Defs/GeneDef[defName="VRE_BatNose"] -
  • TeratophileQuirk
  • -
    diff --git a/Mods/Saurid/Patches/Saurid_Quirk_Patch.xml b/Mods/Saurid/Patches/Saurid_Quirk_Patch.xml new file mode 100644 index 0000000..37188ff --- /dev/null +++ b/Mods/Saurid/Patches/Saurid_Quirk_Patch.xml @@ -0,0 +1,44 @@ + + + + /Defs/GeneDef[defName="VRESaurids_FrilledEars"] + +
  • + ScaleLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRESaurids_CenterFrill"] + +
  • + ScaleLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRESaurids_GeckoTail"] + +
  • + ScaleLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRESaurids_SauridClaws"] + +
  • + ScaleLoverQuirk +
  • +
    +
    + + /Defs/GeneDef[defName="VRESaurids_ScaleSkin"] + +
  • + ScaleLoverQuirk +
  • +
    +
    +
    + diff --git a/Source/Genes/ExtraGenitalia/Gene_Femboy.cs b/Source/Genes/ExtraGenitalia/Gene_Femboy.cs index 6641025..e86beed 100644 --- a/Source/Genes/ExtraGenitalia/Gene_Femboy.cs +++ b/Source/Genes/ExtraGenitalia/Gene_Femboy.cs @@ -55,6 +55,18 @@ namespace RJW_Genes compHediffBodyPart.updatesize(0f); } this.pawn.health.AddHediff(this.additional_genital, part, null, null); + foreach (Gene g in pawn.genes.GenesListForReading) + { + if (g.def.defName == "rjw_genes_hydrolic_genitalia") + { + g.PostAdd(); + } + if (g.def.defName == "rjw_genes_bionic_genitalia") + { + g.PostAdd(); + return; + } + } } // Token: 0x040001B0 RID: 432 diff --git a/Source/Genes/Gender/Gene_FemaleOnly.cs b/Source/Genes/Gender/Gene_FemaleOnly.cs index 97c4365..df48328 100644 --- a/Source/Genes/Gender/Gene_FemaleOnly.cs +++ b/Source/Genes/Gender/Gene_FemaleOnly.cs @@ -36,6 +36,18 @@ namespace RJW_Genes }); GenderUtility.AdjustBodyToTargetGender(pawn, Gender.Female); } + foreach(Gene g in pawn.genes.GenesListForReading) + { + if(g.def.defName== "rjw_genes_hydrolic_genitalia") + { + g.PostAdd(); + } + if (g.def.defName == "rjw_genes_bionic_genitalia") + { + g.PostAdd(); + return; + } + } } public override void Notify_OnPawnGeneration() diff --git a/Source/Genes/Gender/Gene_MaleOnly.cs b/Source/Genes/Gender/Gene_MaleOnly.cs index e081700..d99652a 100644 --- a/Source/Genes/Gender/Gene_MaleOnly.cs +++ b/Source/Genes/Gender/Gene_MaleOnly.cs @@ -36,6 +36,18 @@ namespace RJW_Genes }); GenderUtility.AdjustBodyToTargetGender(pawn, Gender.Male); } + foreach (Gene g in pawn.genes.GenesListForReading) + { + if (g.def.defName == "rjw_genes_hydrolic_genitalia") + { + g.PostAdd(); + } + if (g.def.defName == "rjw_genes_bionic_genitalia") + { + g.PostAdd(); + return; + } + } } public override void Notify_OnPawnGeneration() diff --git a/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs b/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs index fce2ded..61430a2 100644 --- a/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs +++ b/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs @@ -11,5 +11,8 @@ namespace RJW_Genes public HediffDef_PartBase vagina; public HediffDef_PartBase anus; + + public HediffDef_PartBase breasts; + } } diff --git a/Source/Genes/Genitalia/Gene_GenitaliaType.cs b/Source/Genes/Genitalia/Gene_GenitaliaType.cs index 7ffda55..21fada8 100644 --- a/Source/Genes/Genitalia/Gene_GenitaliaType.cs +++ b/Source/Genes/Genitalia/Gene_GenitaliaType.cs @@ -17,7 +17,7 @@ namespace RJW_Genes Apply(); } - protected virtual void Apply() + public virtual void Apply() { if (this.Active) { @@ -27,7 +27,7 @@ namespace RJW_Genes ModLog.Error($"Gene {def} failed to change genitals - Need a modExtension with Class=\"{typeof(GenitaliaTypeExtension).FullName}\"."); return; } - GenitaliaChanger.ChangeGenitalia(pawn, genitals.penis, genitals.vagina, genitals.anus); + GenitaliaChanger.ChangeGenitalia(pawn, genitals.penis, genitals.vagina, genitals.anus, genitals.breasts); } } } diff --git a/Source/Genes/Genitalia/GenitaliaChanger.cs b/Source/Genes/Genitalia/GenitaliaChanger.cs index 86d112b..71f0f05 100644 --- a/Source/Genes/Genitalia/GenitaliaChanger.cs +++ b/Source/Genes/Genitalia/GenitaliaChanger.cs @@ -2,6 +2,7 @@ using RimWorld; using Verse; using System.Collections.Generic; +using rjw.Modules.Interactions.DefModExtensions; namespace RJW_Genes { @@ -16,7 +17,7 @@ namespace RJW_Genes /// the new type of penis /// the new type of vagina /// the new type of anus - public static void ChangeGenitalia(Pawn pawn, HediffDef penisReplacement = null, HediffDef vaginaReplacement = null, HediffDef anusReplacement = null) + public static void ChangeGenitalia(Pawn pawn, HediffDef penisReplacement = null, HediffDef vaginaReplacement = null, HediffDef anusReplacement = null , HediffDef breastsReplacement = null) { var oldParts = Genital_Helper.get_AllPartsHediffList(pawn); BodyPartRecord correctBPR; @@ -40,6 +41,12 @@ namespace RJW_Genes if (Genital_Helper.is_vagina(existingGenital) && vaginaReplacement != null && existingGenital.def != vaginaReplacement) replacementGenital = HediffMaker.MakeHediff(vaginaReplacement, pawn, correctBPR); + if (is_breast(existingGenital) && breastsReplacement != null && existingGenital.def != breastsReplacement) + { + correctBPR = Genital_Helper.get_breastsBPR(pawn); + replacementGenital = HediffMaker.MakeHediff(breastsReplacement, pawn, correctBPR); + } + if (IsAnus(existingGenital) && anusReplacement != null && existingGenital.def != anusReplacement) { correctBPR = Genital_Helper.get_anusBPR(pawn); @@ -74,7 +81,18 @@ namespace RJW_Genes { return candidate.def.defName.ToLower().Contains("anus"); } - public static bool IsArtificial(Hediff candidate) + + public static bool is_breast(Hediff hed) + { + if (!GenitalPartExtension.TryGet(hed, out var ext)) + { + return false; + } + + return ext.family == rjw.Modules.Interactions.Enums.GenitalFamily.Breasts; + } + + public static bool IsArtificial(Hediff candidate) { return candidate.def.defName.ToLower().Contains("bionic") || candidate.def.defName.ToLower().Contains("archo"); } @@ -88,5 +106,7 @@ namespace RJW_Genes } } + + } } diff --git a/Source/Genes/Genitalia/GenitaliaUtility.cs b/Source/Genes/Genitalia/GenitaliaUtility.cs index a56d9ae..6a6ba79 100644 --- a/Source/Genes/Genitalia/GenitaliaUtility.cs +++ b/Source/Genes/Genitalia/GenitaliaUtility.cs @@ -16,12 +16,11 @@ namespace RJW_Genes /// The first GeneDef of the pawn related to GenitaliaTypes public static GeneDef GetGenitaliaTypeGeneForPawn(Pawn pawn) { - - foreach (var gene in pawn.genes.GenesListForReading) - { + foreach (var gene in pawn.genes.GenesListForReading) + { if (gene is Gene_GenitaliaType) if (!gene.Overridden) - return gene.def; + return gene.def; } return null; } @@ -46,23 +45,7 @@ namespace RJW_Genes public static HediffDef GetBreastsForGene(GeneDef gene) { - if (gene == null) - return Genital_Helper.average_breasts; - - switch (gene.defName) - { - //TODO: Do I want the default to be generic or average? - case "rjw_genes_equine_genitalia": return Genital_Helper.average_breasts; - case "rjw_genes_canine_genitalia": return Genital_Helper.average_breasts; - case "rjw_genes_feline_genitalia": return Genital_Helper.average_breasts; - case "rjw_genes_demonic_genitalia": return Genital_Helper.average_breasts; - case "rjw_genes_dragon_genitalia": return Genital_Helper.average_breasts; - case "rjw_genes_slime_genitalia": return Genital_Helper.slime_breasts; - case "rjw_genes_udder_breasts": return Genital_Helper.udder_breasts; - case "rjw_genes_ovipositor_genitalia": return Genital_Helper.average_breasts; - - default: return Genital_Helper.average_breasts; - } + return gene?.GetModExtension()?.breasts ?? Genital_Helper.average_breasts; } public static bool PawnStillNeedsGenitalia(Pawn pawn) diff --git a/Source/Genes/QuirkPatching/QuirkPatcher.cs b/Source/Genes/QuirkPatching/QuirkPatcher.cs index e43ffe4..af8eb29 100644 --- a/Source/Genes/QuirkPatching/QuirkPatcher.cs +++ b/Source/Genes/QuirkPatching/QuirkPatcher.cs @@ -20,7 +20,7 @@ namespace RJW_Genes return; } } - int count = 0; + int count = -1; List listquirk = new List(); string s; foreach (Gene g in partner.genes.GenesListForReading) @@ -52,7 +52,7 @@ namespace RJW_Genes } } } - __result = __result + count; + if(count>0)__result = __result + count; return; }