diff --git a/CHANGELOG.md b/CHANGELOG.md index df15b6f..6baf611 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,33 +1,3 @@ -# 2.1.0 - -**Additions**: - -- New Ability Gene *Mating-Call*: Get bred by all nearby animals. -- New Ability Gene *Pheromone Spit*: Mark a target to be bred by nearby animals -- New Passive Gene *Sexual Tamer*: Chance to tame or train animals on bestiality. -- Human + Animal Pregnancy can (if enabled in settings) produce Vanilla Expanded Genetics Hybrids. Thanks to @Jaaldabaoth (#88) -- Xenogenes for "Big and Small" Xenotypes thanks to @Flock-of-birds (#83) -- Xenogenes for "Biotech Expansion Mammalia" and "Biotech Expansion - Mythic" thanks to @Ohreallyow (#86) -- Xenogenes update for (many?) "Vanilla Races Expanded (VRE)" Mods - Thanks to @Jaaldabaoth (#84 / #88 ) -- Genes can now fulfill RJW Quirks, configurable in XML. Thanks to @Jaaldabaoth (#84 / #88) -- "Genes" to support VRE Androids having Mechanical Genitalia. Thanks to @Jaaldabaoth (#88) -- "Curiosity Genes" alongside other Curiosities from VRE. Thanks to @Jaaldabaoth (#88) -- Support for many VE-Genetics Animals into the Animal-Framework. Thanks to @Jaaldabaoth (#88) - -**Fixes**: - -- Licentia Genes are back in and should work again. I used the [updated for by Jaaldabaoth](https://gitgud.io/Jaaldabaoth/licentia-labs) for my testing. -- Lower-casing most labels to fit rimworld standards, thanks to @Flock-of-birds (#83) -- X-Gender-Only Genes leave / re-add artificial genitalia. Thanks to @Jaaldabaoth (#84 / #88) -- Issues with Elasticity References (#87) - - -**Changes**: - -- Minified some Race-Patches, thanks to @Flock-of-birds (#83) -- XML-Genitalia-Genes can now also provide Breasts. Thanks to @Jaaldabaoth (#84 / #88) -- Many patches and files went into a `Mods`Folder and use an `LoadFolders.xml`. Thanks to @Jaaldabaoth (#84 / #88) - # 2.0.0 **Summary**: diff --git a/Common/Assemblies/Rjw-Genes.dll b/Common/Assemblies/Rjw-Genes.dll index 2f5d259..fac437a 100644 Binary files a/Common/Assemblies/Rjw-Genes.dll and b/Common/Assemblies/Rjw-Genes.dll differ diff --git a/Common/Defs/AbilityDefs/Ability_MatingCall.xml b/Common/Defs/AbilityDefs/Ability_MatingCall.xml deleted file mode 100644 index 98cb5c7..0000000 --- a/Common/Defs/AbilityDefs/Ability_MatingCall.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - rjw_genes_ability_mating_call - - Calls nearby animals to breed me. - UI/Abilities/AnimalBerserkPulse - - true - false - - false - - 50 - 0 - - - 410 - - 30000 - - 5 - Verb_CastAbility - - False - False - True - True - - - - -
  • - PsycastPsychicEffect -
  • -
  • - 40 -
  • -
  • - CompAbilityEffect_GiveHediff - Hediff_Submitting - True -
  • -
    - Being Bred is not an easy business.\nThis might lead to a broken pawn, torn genitalia and hybrid-pregnancies.\nMaybe this is what you want.\nThe pawn will `submit` and e.g. Insects might cocoon him.\n\nAre you sure to proceed? - -
    - -
    \ No newline at end of file diff --git a/Common/Defs/AbilityDefs/Ability_PheromoneSpit.xml b/Common/Defs/AbilityDefs/Ability_PheromoneSpit.xml deleted file mode 100644 index 584e0a8..0000000 --- a/Common/Defs/AbilityDefs/Ability_PheromoneSpit.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - rjw_genes_ability_pheromone_spit - - Spit a condensed ball of animal pheromones to mark a target. Nearby Animals will try to breed the target. This means all animals - hostile, friendly and wild. - UI/Abilities/PiercingSpine - 3000 - 201 - true - - Verb_CastAbility - 11 - 1.2 - PiercingSpine_Launch - - True - False - False - False - - - -
  • - 25 -
  • -
    -
    -
    \ No newline at end of file diff --git a/Common/Defs/GeneDefs/GeneDefs_Breeding.xml b/Common/Defs/GeneDefs/GeneDefs_Breeding.xml index 76d4369..c54ece4 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Breeding.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Breeding.xml @@ -77,38 +77,4 @@ -1 - - - rjw_genes_mating_call - - This gene allows to call nearby animals and invite them for mating. - UI/Abilities/AnimalBerserkPulse - 65 - -
  • rjw_genes_ability_mating_call
  • -
    - - rjw_genes_ability_mating_call - - 2 - -1 -
    - - - - rjw_genes_pheromone_spit - - This gene allows to mark targets for breeding, enticing nearby animals for a ride. - UI/Abilities/AnimalBerserkPulse - 66 - -
  • rjw_genes_ability_pheromone_spit
  • -
    - - rjw_genes_ability_pheromone_spit - - 2 - -1 -
    - \ No newline at end of file diff --git a/Common/Defs/GeneDefs/GeneDefs_Cosmetic.xml b/Common/Defs/GeneDefs/GeneDefs_Cosmetic.xml index cfeab86..cfe7024 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Cosmetic.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Cosmetic.xml @@ -48,9 +48,6 @@ Genes/Icons/RJW_Genes_Endogene_Background Genes/Icons/RJW_Genes_Xenogene_Background -
  • - DemonLoverQuirk -
  • @@ -106,9 +103,6 @@ Genes/Icons/RJW_Genes_Endogene_Background Genes/Icons/RJW_Genes_Xenogene_Background -
  • - DemonLoverQuirk -
  • \ No newline at end of file diff --git a/Common/Defs/GeneDefs/GeneDefs_Cum.xml b/Common/Defs/GeneDefs/GeneDefs_Cum.xml index 56615ae..a3f9208 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Cum.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Cum.xml @@ -48,4 +48,64 @@ -2 + + rjw_genes_likes_cumflation + + rjw_genes_cum + This Xenotype loves being cumflated. + Genes/Icons/Cumflation + 536 + +
  • + LikesCumflation +
  • +
    + +
  • NotCumflatable
  • +
    + + +
  • + Genes/Icons/RJW_Genes_Endogene_Background + Genes/Icons/RJW_Genes_Xenogene_Background +
  • +
    +
    + + + rjw_genes_cumflation_immunity + + rjw_genes_cum + This Xenotype cannot get cumflated. + Genes/Icons/Cumflation_Immunity + 537 + +
  • NotCumflatable
  • +
    + + +
  • + Genes/Icons/RJW_Genes_Endogene_Background + Genes/Icons/RJW_Genes_Xenogene_Background +
  • +
    +
    + + + + rjw_genes_generous_donor + + rjw_genes_cum + When this Xenotype transfers nutrition via cumshot, the giver will not get hungry. (Licentia Configuration for Transfer Nutrition must be enabled). + Genes/Icons/Generous_Donor + 538 + + +
  • + Genes/Icons/RJW_Genes_Endogene_Background + Genes/Icons/RJW_Genes_Xenogene_Background +
  • +
    +
    + \ No newline at end of file diff --git a/Common/Defs/GeneDefs/GeneDefs_Damage.xml b/Common/Defs/GeneDefs/GeneDefs_Damage.xml index 409fe35..0e3f586 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Damage.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Damage.xml @@ -1,6 +1,25 @@ + + rjw_genes_elasticity + + rjw_genes_damage + This Xenotype cannot get stretched by huge penetrators. + Genes/Icons/Elasticity + RJW_Genes.Gene_Elasticity + -1 + 1 + 1 + + +
  • + Genes/Icons/RJW_Genes_Endogene_Background + Genes/Icons/RJW_Genes_Xenogene_Background +
  • +
    +
    + rjw_genes_unbreakable diff --git a/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml b/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml index a9e9a46..eaf8728 100644 --- a/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml +++ b/Common/Defs/GeneDefs/GeneDefs_ExtraGenitalia.xml @@ -1,6 +1,7 @@ + rjw_genes_genitalia_extras false @@ -14,8 +15,6 @@ rjw_genes_extra_penis - rjw_genes_genitalia_extras - Males of this species grow an additional penis . Genes/Icons/extra_male RJW_Genes.Gene_ExtraPenis @@ -28,7 +27,6 @@ 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 @@ -42,7 +40,6 @@ rjw_genes_extra_vagina - rjw_genes_genitalia_extras Females of this species grow an additional vagina . Genes/Icons/Extra_Vagina RJW_Genes.Gene_ExtraVagina @@ -55,7 +52,6 @@ rjw_genes_no_vagina - rjw_genes_genitalia_extras Females of this do not have a vagina. Genes/Icons/No_Vagina RJW_Genes.Gene_NoVagina @@ -69,7 +65,6 @@ 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 @@ -82,7 +77,6 @@ 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 @@ -95,7 +89,6 @@ rjw_genes_extra_anus - rjw_genes_genitalia_extras This specias has an extra anus. Genes/Icons/Extra_Anus RJW_Genes.Gene_ExtraAnus @@ -108,7 +101,6 @@ rjw_genes_no_anus - rjw_genes_genitalia_extras This specias has no anus. Genes/Icons/No_Anus RJW_Genes.Gene_NoAnus @@ -121,7 +113,6 @@ 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 @@ -135,7 +126,6 @@ rjw_genes_femboy - rjw_genes_gender Males with this gene are considered female despite having a penis Genes/Icons/Futa RJW_Genes.Gene_Femboy @@ -148,7 +138,6 @@ rjw_genes_featureless_chest - rjw_genes_genitalia_extras Carriers of this gene do not have breasts or nipples. Genes/Icons/No_Breasts @@ -162,7 +151,6 @@ 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 5cc2e9d..6d173b9 100644 --- a/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml +++ b/Common/Defs/GeneDefs/GeneDefs_GenitaliaTypes.xml @@ -7,7 +7,7 @@
  • GenitalType
  • - true + false 0 @@ -43,7 +43,6 @@ Penis Vagina Anus - Breasts 802 @@ -90,10 +89,6 @@ DemonVagina DemonAnus -
  • - DemonLoverQuirk -
  • -
    805
    @@ -109,9 +104,6 @@ DragonVagina GenericAnus -
  • - ScaleLoverQuirk -
  • 806
    @@ -126,11 +118,7 @@ SlimeTentacles SlimeVagina SlimeAnus - SlimeBreasts -
  • - SlimeLoverQuirk -
  • 807 @@ -146,9 +134,6 @@ DemonVagina DemonAnus -
  • - DemonLoverQuirk -
  • 807 @@ -162,9 +147,6 @@
  • CrocodilianPenis
  • -
  • - ScaleLoverQuirk -
  • 807 @@ -178,7 +160,6 @@
  • RaccoonPenis
  • - 807 @@ -192,9 +173,6 @@
  • HemiPenis
  • -
  • - ScaleLoverQuirk -
  • 807 @@ -213,9 +191,6 @@ GhostPenis GhostVagina -
  • - TeratophileQuirk -
  • 807 @@ -229,9 +204,6 @@
  • GolemPenis
  • -
  • - TeratophileQuirk -
  • 807 @@ -258,9 +230,6 @@
  • NecroPenis
  • -
  • - TeratophileQuirk -
  • 807 @@ -313,14 +282,15 @@
  • TentaclePenis
  • -
  • - TeratophileQuirk -
  • 807 + + + + rjw_genes_ovipositor_genitalia @@ -332,9 +302,6 @@ OvipositorF InsectAnus -
  • - ChitinLoverQuirk -
  • 808 diff --git a/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml b/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml index 6a0878a..4e5160a 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml @@ -181,13 +181,6 @@ 1.10 -2 1 - - -
  • - ImpregnationFetishQuirk -
  • -
    -
    \ No newline at end of file diff --git a/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml b/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml index a4ecb4d..0165d8f 100644 --- a/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml +++ b/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml @@ -82,12 +82,11 @@ rjw_genes_sexual_mytosis - Carriers have malfunctioning regenerative archites that grow more unstable with ongoing multiple orgasms - climaxing in a process of mytosis. This will result in an (biologically) identical pawn and both twins are set in a regenerative state. Also, the pawn can have multiple orgasms: In a state of higher unstableness, they come quicker. + Carriers of this gene grow more unstable with ongoing multiple orgasms - climaxing in a process of mytosis. This will result in an (biologically) identical pawn and both twins are set in a regenerative state. Also, the pawn can have multiple orgasms: In a state of higher unstableness, they come quicker. UI/Icons/Genes/Gene_PsychicBonding 5 5 -5 - 1 @@ -125,22 +124,6 @@ 1 -1 - -
  • - BreederQuirk -
  • -
    - - rjw_genes_sex_tamer - - sextamer - Bestiality has a chance to tame animals or advance their training. - UI/Abilities/AnimalBerserkPulse - 14 - 2 - -1 - - \ No newline at end of file diff --git a/Common/Patches/Genes/Vanilla_Quirk_Patch.xml b/Common/Patches/Genes/Vanilla_Quirk_Patch.xml deleted file mode 100644 index 40458da..0000000 --- a/Common/Patches/Genes/Vanilla_Quirk_Patch.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - /Defs/GeneDef[defName="Furskin"] - - -
  • - FurLoverQuirk -
  • -
    -
    -
    - - /Defs/GeneDef[defName="Head_Gaunt"] - - -
  • - TeratophileQuirk -
  • -
    -
    -
    -
    - diff --git a/Common/Patches/Xenotypes/GenitaliaUpdate.xml b/Common/Patches/Xenotypes/GenitaliaUpdate.xml index 1451a13..e6a9681 100644 --- a/Common/Patches/Xenotypes/GenitaliaUpdate.xml +++ b/Common/Patches/Xenotypes/GenitaliaUpdate.xml @@ -14,8 +14,6 @@
  • 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 deleted file mode 100644 index c49c4ac..0000000 --- a/Common/Patches/Xenotypes/PatchPigskins.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - -
  • 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 deleted file mode 100644 index 6896e98..0000000 --- a/Common/Patches/Xenotypes/PatchVRELycanthrope.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - -
  • 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 deleted file mode 100644 index b5dcd7f..0000000 Binary files a/Common/Textures/Genes/Icons/sex_curiosity.png and /dev/null differ diff --git a/Common/Textures/Genes/Icons/sex_disabled.png b/Common/Textures/Genes/Icons/sex_disabled.png deleted file mode 100644 index 9ce4983..0000000 Binary files a/Common/Textures/Genes/Icons/sex_disabled.png and /dev/null differ diff --git a/Common/Textures/Genes/Icons/sex_enabled.png b/Common/Textures/Genes/Icons/sex_enabled.png deleted file mode 100644 index 86e0a6b..0000000 Binary files a/Common/Textures/Genes/Icons/sex_enabled.png and /dev/null differ diff --git a/LoadFolders.xml b/LoadFolders.xml index 8f11ba4..d708230 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -5,16 +5,5 @@
  • Common
  • Mods/NotRaceSupport
  • -
  • Mods/Sanguophage
  • -
  • Mods/Saurid
  • -
  • Mods/Phytokin
  • -
  • Mods/Lycanthrope
  • -
  • Mods/Highmate
  • -
  • Mods/Genie
  • -
  • Mods/Fungoid
  • -
  • Mods/Archon
  • -
  • Mods/Android
  • -
  • Mods/VE_Genetics
  • -
  • Mods/LicentiaLabs
  • \ No newline at end of file diff --git a/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml b/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml deleted file mode 100644 index 2977367..0000000 --- a/Mods/Android/Defs/AndroidConvertableGenesDefs/AndroidConvertableGenesDefs.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - 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 deleted file mode 100644 index 058d719..0000000 --- a/Mods/Android/Defs/GeneDefs/GeneDefs_Androids.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - 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 deleted file mode 100644 index 52f9333..0000000 --- a/Mods/Android/Patches/Android_Quirk_Patch.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - /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 deleted file mode 100644 index 0f7e119..0000000 --- a/Mods/Archon/Patches/Archon_Quirk_Patch.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - /Defs/GeneDef[defName="VRE_Leatherskin"] - -
  • - SkinLoverQuirk -
  • -
    -
    -
    - diff --git a/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml b/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml deleted file mode 100644 index bcb1e72..0000000 --- a/Mods/Fungoid/Patches/Fungoid_Quirk_Patch.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - /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 deleted file mode 100644 index 98cd404..0000000 --- a/Mods/Genie/Defs/GeneDefs/GeneDefs_Curiosity_sex.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - 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 deleted file mode 100644 index 0f69977..0000000 --- a/Mods/Highmate/Patches/Highmate_Quirk_Patch.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - /Defs/GeneDef[defName="VRE_FelineEars"] - -
  • - FurLoverQuirk -
  • -
    -
    - - /Defs/GeneDef[defName="VRE_FelineTail"] - -
  • - FurLoverQuirk -
  • -
    -
    - - /Defs/GeneDef[defName="VRE_PerfectBody"] - -
  • - SkinLoverQuirk -
  • -
    -
    -
    - diff --git a/Mods/LicentiaLabs/Defs/GeneDefs/LicentiaLabs_GeneDefs.xml b/Mods/LicentiaLabs/Defs/GeneDefs/LicentiaLabs_GeneDefs.xml deleted file mode 100644 index 22fb911..0000000 --- a/Mods/LicentiaLabs/Defs/GeneDefs/LicentiaLabs_GeneDefs.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - - rjw_genes_elasticity - - rjw_genes_damage - This Xenotype cannot get stretched by huge penetrators. - Genes/Icons/Elasticity - RJW_Genes.Gene_Elasticity - -1 - 1 - 1 - - -
  • - Genes/Icons/RJW_Genes_Endogene_Background - Genes/Icons/RJW_Genes_Xenogene_Background -
  • -
    -
    - - - rjw_genes_likes_cumflation - - rjw_genes_cum - This Xenotype loves being cumflated. - Genes/Icons/Cumflation - 536 - -
  • - LikesCumflation -
  • -
    - -
  • NotCumflatable
  • -
    - - -
  • - Genes/Icons/RJW_Genes_Endogene_Background - Genes/Icons/RJW_Genes_Xenogene_Background -
  • -
    -
    - - - rjw_genes_cumflation_immunity - - rjw_genes_cum - This Xenotype cannot get cumflated. - Genes/Icons/Cumflation_Immunity - 537 - -
  • NotCumflatable
  • -
    - - -
  • - Genes/Icons/RJW_Genes_Endogene_Background - Genes/Icons/RJW_Genes_Xenogene_Background -
  • -
    -
    - - - rjw_genes_generous_donor - - rjw_genes_cum - When this Xenotype transfers nutrition via cumshot, the giver will not get hungry. (Licentia Configuration for Transfer Nutrition must be enabled). - Genes/Icons/Generous_Donor - 538 - - -
  • - Genes/Icons/RJW_Genes_Endogene_Background - Genes/Icons/RJW_Genes_Xenogene_Background -
  • -
    -
    - -
    \ No newline at end of file diff --git a/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml b/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml deleted file mode 100644 index 475950c..0000000 --- a/Mods/Lycanthrope/Patches/Lycanthrope_Quirk_Patch.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - /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 deleted file mode 100644 index 78089d4..0000000 --- a/Mods/Phytokin/Patches/Phytokin_Quirk_Patch.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - /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 deleted file mode 100644 index cf01f46..0000000 --- a/Mods/Sanguophage/Patches/Sanguophage_Quirk_Patch.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - /Defs/GeneDef[defName="VRE_SanguineHair"] - -
  • - DemonLoverQuirk -
  • -
    -
    - - /Defs/GeneDef[defName="VRE_BatEars"] - -
  • - TeratophileQuirk -
  • -
    -
    - - /Defs/GeneDef[defName="VRE_UpperBatEars"] - -
  • - TeratophileQuirk -
  • -
    -
    - - /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 deleted file mode 100644 index 37188ff..0000000 --- a/Mods/Saurid/Patches/Saurid_Quirk_Patch.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - /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/Mods/VE_Genetics/Defs/HedifDef/Hediffs_Animals.xml b/Mods/VE_Genetics/Defs/HedifDef/Hediffs_Animals.xml deleted file mode 100644 index 93aa987..0000000 --- a/Mods/VE_Genetics/Defs/HedifDef/Hediffs_Animals.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - rjw_genes_animal_control_hediff - - This creature is more controlable with a natural human part. - HediffWithComps - (0.9, 1.0, 0.35) - 1 - -
  • - true -
  • -
    - false -
    - -
    \ No newline at end of file diff --git a/Mods/VE_Genetics/Defs/RaceGeneDef/RaceGeneDefs_VEgenetic.xml b/Mods/VE_Genetics/Defs/RaceGeneDef/RaceGeneDefs_VEgenetic.xml deleted file mode 100644 index a4d43ef..0000000 --- a/Mods/VE_Genetics/Defs/RaceGeneDef/RaceGeneDefs_VEgenetic.xml +++ /dev/null @@ -1,654 +0,0 @@ - - - - - GR_Manbear_GenGroup - - -
  • GR_Manbear
  • -
  • GR_Bearman
  • -
    - - - -
  • - Immunity_Strong - 0.8 -
  • -
  • - MinTemp_LargeDecrease - 0.8 -
  • -
  • - Aggression_Aggressive - 0.8 -
  • -
  • - Sleepy - 0.8 -
  • -
  • - Beard_Always - 0.8 -
  • -
  • - VoiceRoar - 0.8 -
  • -
  • - Body_Fat - 0.8 -
  • -
  • - Body_Hulk - 0.8 -
  • -
  • - Hair_ReddishBrown - 0.8 -
  • -
  • - Hair_DarkBrown - 0.8 -
  • -
  • - Hair_DarkSaturatedReddish - 0.8 -
  • -
  • - Hair_DarkReddish - 0.8 -
  • -
  • - RobustDigestion - 0.8 -
  • -
  • - Furskin - 0.8 -
  • -
  • - Unstoppable - 0.8 -
  • -
  • - AptitudeTerrible_Artistic - 0.8 -
  • -
  • - AptitudeTerrible_Social - 0.8 -
  • -
  • - AptitudePoor_Intellectual - 0.8 -
  • - -
    - -
    - - - GR_Manalope_GenGroup - - -
  • GR_Manalope
  • -
  • GR_Booman
  • -
    - - - -
  • - FireSpew - 0.8 -
  • -
  • - Beauty_Ugly - 0.8 -
  • -
  • - Hair_Blonde - 0.8 -
  • -
  • - Hair_SandyBlonde - 0.8 -
  • -
  • - Hair_LightOrange - 0.8 -
  • -
  • - rjw_genes_udder - 0.8 -
  • - -
    - -
    - - - GR_Manchicken_GenGroup - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    - - - -
  • - Mood_Optimist - 0.8 -
  • -
  • - Delicate - 0.8 -
  • -
  • - Beauty_Pretty - 0.8 -
  • -
  • - Body_Thin - 0.8 -
  • -
  • - AptitudeTerrible_Melee - 0.8 -
  • -
  • - AptitudeTerrible_Mining - 0.8 -
  • -
  • - AptitudeRemarkable_Social - 0.8 -
  • -
  • - AptitudeStrong_Intellectual - 0.8 -
  • - -
    - -
    - - - GR_Manffalo_GenGroup - - -
  • GR_Manffalo
  • -
  • GR_Muffaloman
  • -
    - - - -
  • - Headbone_Human - 0.9 -
  • -
  • - Headbone_MiniHorns - 0.9 -
  • -
  • - Furskin - 0.9 -
  • -
  • - MinTemp_SmallIncrease - 0.9 -
  • -
  • - rjw_genes_big_male_genitalia - 0.7 -
  • -
  • - rjw_genes_loose_female_genitalia - 0.7 -
  • -
  • - rjw_genes_big_breasts - 0.7 -
  • -
  • - rjw_genes_udder - 0.7 -
  • -
  • - rjw_genes_Needle_genitalia - 0.7 -
  • -
  • - rjw_mc_genes_perm_lactating - 0.05 -
  • -
  • - rjw_genes_zoophile - 0.5 -
  • -
  • - AptitudeTerrible_Intellectual - 0.05 -
  • -
  • - AptitudePoor_Intellectual - 0.7 -
  • -
    - -
    - - - GR_Manwolf_GenGroup - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    - - - -
  • - AptitudeTerrible_Mining - 0.05 -
  • -
  • - PsychicBonding - 0.05 -
  • -
  • - Mood_Sanguine - 0.05 -
  • -
  • - Ears_Floppy - 0.9 -
  • -
  • - rjw_genes_canine_genitalia - 0.9 -
  • -
  • - Furskin - 0.9 -
  • -
  • - MinTemp_SmallIncrease - 0.9 -
  • -
  • - Libido_High - 0.9 -
  • -
  • - AptitudePoor_Mining - 0.5 -
  • -
  • - rjw_genes_zoophile - 0.5 -
  • -
  • - Mood_Optimist - 0.5 -
  • -
    - -
    - - - GR_Mancat_GenGroup - - -
  • GR_Mancat
  • -
  • GR_Catman
  • -
    - - - -
  • - PsychicBonding - 0.05 -
  • -
  • - AptitudeTerrible_Animals - 0.05 -
  • -
  • - Ears_Cat - 0.9 -
  • -
  • - Body_Thin - 0.9 -
  • -
  • - rjw_genes_feline_genitalia - 0.9 -
  • -
  • - Furskin - 0.9 -
  • -
  • - MinTemp_SmallIncrease - 0.9 -
  • -
  • - rjw_genes_small_male_genitalia - 0.7 -
  • -
  • - rjw_genes_tight_female_genitalia - 0.7 -
  • -
  • - rjw_genes_small_breasts - 0.7 -
  • -
  • - rjw_genes_tight_anus - 0.7 -
  • -
  • - DarkVision - 0.8 -
  • -
  • - AptitudePoor_Animals - 0.5 -
  • -
  • - Beauty_Pretty - 0.7 -
  • -
  • - rjw_genes_zoophile - 0.5 -
  • -
    - -
    - - - GR_Mansquirrel_GenGroup - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    - - - -
  • - MoveSpeed_VeryQuick - 0.8 -
  • -
  • - KindInstinct - 0.8 -
  • -
  • - Delicate - 0.8 -
  • -
  • - Ears_Cat - 0.8 -
  • -
  • - Body_Thin - 0.8 -
  • -
  • - Tail_Furry - 0.8 -
  • -
  • - AptitudeTerrible_Shooting - 0.8 -
  • -
  • - AptitudeTerrible_Melee - 0.8 -
  • -
  • - AptitudeTerrible_Mining - 0.8 -
  • -
  • - AptitudeTerrible_Animals - 0.8 -
  • -
  • - AptitudeStrong_Intellectual - 0.8 -
  • -
  • - rjw_genes_Needle_genitalia - 0.8 -
  • -
  • - rjw_genes_zoophile - 0.8 -
  • - -
    - -
    - - - GR_Thrumboman_GenGroup - - -
  • GR_Thrumboman
  • -
    - - - -
  • - Unstoppable - 0.25 -
  • -
  • - Headbone_CenterHorn - 0.9 -
  • -
  • - VoiceRoar - 0.6 -
  • -
  • - MaxTemp_SmallIncrease - 0.7 -
  • -
  • - MaxTemp_LargeIncrease - 0.1 -
  • -
  • - rjw_genes_dragon_genitalia - 0.6 -
  • -
  • - FireResistant - 0.15 -
  • -
  • - rjw_genes_much_cum - 0.3 -
  • -
  • - rjw_genes_very_much_cum - 0.05 -
  • -
  • - Body_Hulk - 0.7 -
  • - -
    - -
    - - - - - GR_Hurseman_GenGroup - - -
  • GR_Hurseman
  • -
    - - - -
  • - Body_Standard - 0.9 -
  • -
  • - Body_Hulk - 0.7 -
  • -
  • - rjw_genes_equine_genitalia - 0.9 -
  • -
  • - rjw_genes_zoophile - 0.5 -
  • -
  • - rjw_genes_much_cum - 0.5 -
  • -
  • - MoveSpeed_Quick - 0.5 -
  • -
  • - AptitudeTerrible_Mining - 0.5 -
  • -
  • - AptitudeTerrible_Intellectual - 0.5 -
  • -
  • - Furskin - 0.9 -
  • -
  • - MinTemp_SmallIncrease - 0.9 -
  • - -
    - -
    - - - - - GR_Manscarab_GenGroup - - -
  • GR_Manscarab
  • -
    - - - -
  • - Beauty_Ugly - 0.5 -
  • -
  • - Immunity_Strong - 0.6 -
  • -
  • - ToxicEnvironmentResistance_Partial - 0.4 -
  • -
  • - rjw_genes_ovipositor_genitalia - 0.15 -
  • -
  • - rjw_genes_insectincubator - 0.1 -
  • -
  • - rjw_genes_insectbreeder - 0.1 -
  • -
  • - Body_Thin - 0.3 -
  • - -
    - -
    - - - GR_Lizardman_GenGroup - - -
  • GR_Lizardman
  • -
    - - - -
  • - AcidSpray - 0.7 -
  • -
  • - MinTemp_SmallIncrease - 0.7 -
  • -
  • - MaxTemp_SmallIncrease - 0.7 -
  • -
  • - Robust - 0.7 -
  • -
  • - Hair_BaldOnly - 0.7 -
  • -
  • - Beard_NoBeardOnly - 0.7 -
  • -
  • - Body_Standard - 0.7 -
  • -
  • - Headbone_CenterHorn - 0.7 -
  • -
  • - AptitudeTerrible_Artistic - 0.7 -
  • -
  • - AptitudeTerrible_Social - 0.7 -
  • -
  • - rjw_genes_reptilian_genitalia - 0.7 -
  • - -
    - -
    - -
    \ No newline at end of file diff --git a/Mods/VE_Genetics/Defs/RaceGroupDef/Hybrid_Group.xml b/Mods/VE_Genetics/Defs/RaceGroupDef/Hybrid_Group.xml deleted file mode 100644 index ab3ba01..0000000 --- a/Mods/VE_Genetics/Defs/RaceGroupDef/Hybrid_Group.xml +++ /dev/null @@ -1,795 +0,0 @@ - - - - - Bear_Grizzly_Group - -
  • Human
  • -
  • Bear_Grizzly
  • -
    - -
  • GR_Manbear
  • -
  • GR_Bearman
  • -
    -
    - - - Bear_Polar_Group - -
  • Human
  • -
  • Bear_Polar
  • -
    - - -
  • GR_Manbear
  • -
  • GR_Bearman
  • -
    -
    - - - GR_Manbear_Group - -
  • Human
  • -
  • GR_Manbear
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Bearman_Group - -
  • Human
  • -
  • GR_Bearman
  • -
    - - -
  • Human
  • -
    -
    - - - Boomalope_Group - -
  • Human
  • -
  • Boomalope
  • -
    - - -
  • GR_Manalope
  • -
  • GR_Booman
  • -
    -
    - - - GR_Manalope_Group - -
  • Human
  • -
  • GR_Manalope
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Booman_Group - -
  • Human
  • -
  • GR_Booman
  • -
    - - -
  • Human
  • -
    -
    - - - Chicken_Group - -
  • Human
  • -
  • Chicken
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Duck_Group - -
  • Human
  • -
  • Duck
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Turkey_Group - -
  • Human
  • -
  • Turkey
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Goose_Group - -
  • Human
  • -
  • Goose
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Ostrich_Group - -
  • Human
  • -
  • Ostrich
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Emu_Group - -
  • Human
  • -
  • Emu
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - Cassowary_Group - -
  • Human
  • -
  • Cassowary
  • -
    - - -
  • GR_Manchicken
  • -
  • GR_Turkeyman
  • -
    -
    - - - GR_Manchicken_Group - -
  • Human
  • -
  • GR_Manchicken
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Turkeyman_Group - -
  • Human
  • -
  • GR_Turkeyman
  • -
    - - -
  • Human
  • -
    -
    - - - Cow_Group - -
  • Human
  • -
  • Cow
  • -
    - - -
  • GR_Manffalo
  • -
  • GR_Muffaloman
  • -
    -
    - - - Muffalo_Group - -
  • Human
  • -
  • Muffalo
  • -
    - - -
  • GR_Manffalo
  • -
  • GR_Muffaloman
  • -
    -
    - - - Bison_Group - -
  • Human
  • -
  • Bison
  • -
    - - -
  • GR_Manffalo
  • -
  • GR_Muffaloman
  • -
    -
    - - - Yak_Group - -
  • Human
  • -
  • Yak
  • -
    - - -
  • GR_Manffalo
  • -
  • GR_Muffaloman
  • -
    -
    - - - GR_Manffalo_Group - -
  • Human
  • -
  • GR_Manffalo
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Muffaloman_Group - -
  • Human
  • -
  • GR_Muffaloman
  • -
    - - -
  • Human
  • -
    -
    - - - Warg_Group - -
  • Human
  • -
  • Warg
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Wolf_Timber_Group - -
  • Human
  • -
  • Wolf_Timber
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Wolf_Arctic_Group - -
  • Human
  • -
  • Wolf_Arctic
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Fox_Fennec_Group - -
  • Human
  • -
  • Fox_Fennec
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Fox_Red_Group - -
  • Human
  • -
  • Fox_Red
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Fox_Arctic_Group - -
  • Human
  • -
  • Fox_Arctic
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - Husky_Group - -
  • Human
  • -
  • Husky
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - LabradorRetriever_Group - -
  • Human
  • -
  • LabradorRetriever
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - YorkshireTerrier_Group - -
  • Human
  • -
  • YorkshireTerrier
  • -
    - - -
  • GR_Manwolf
  • -
  • GR_Dogman
  • -
    -
    - - - GR_Manwolf_Group - -
  • Human
  • -
  • GR_Manwolf
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Dogman_Group - -
  • Human
  • -
  • GR_Dogman
  • -
    - - -
  • Human
  • -
    -
    - - - Cougar_Group - -
  • Human
  • -
  • Cougar
  • -
    - - -
  • GR_Mancat
  • -
  • GR_Catman
  • -
    -
    - - - Panther_Group - -
  • Human
  • -
  • Panther
  • -
    - - -
  • GR_Mancat
  • -
  • GR_Catman
  • -
    -
    - - - Lynx_Group - -
  • Human
  • -
  • Lynx
  • -
    - - -
  • GR_Mancat
  • -
  • GR_Catman
  • -
    -
    - - - Cat_Group - -
  • Human
  • -
  • Cat
  • -
    - - -
  • GR_Mancat
  • -
  • GR_Catman
  • -
    -
    - - - GR_Mancat_Group - -
  • Human
  • -
  • GR_Mancat
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Catman_Group - -
  • Human
  • -
  • GR_Catman
  • -
    - - -
  • Human
  • -
    -
    - - - GuineaPig_Group - -
  • Human
  • -
  • GuineaPig
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - Hare_Group - -
  • Human
  • -
  • Hare
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - Snowhare_Group - -
  • Human
  • -
  • Snowhare
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - Squirrel_Group - -
  • Human
  • -
  • Squirrel
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - Rat_Group - -
  • Human
  • -
  • Rat
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - Raccoon_Group - -
  • Human
  • -
  • Raccoon
  • -
    - - -
  • GR_Mansquirrel
  • -
  • GR_Moleman
  • -
    -
    - - - GR_Mansquirrel_Group - -
  • Human
  • -
  • GR_Mansquirrel
  • -
    - - -
  • Human
  • -
    -
    - - - GR_Moleman_Group - -
  • Human
  • -
  • GR_Moleman
  • -
    - - -
  • Human
  • -
    -
    - - - Thrumbo_Group - -
  • Human
  • -
  • Thrumbo
  • -
    - - -
  • GR_Thrumboman
  • -
    -
    - - - GR_Thrumboman_Group - -
  • Human
  • -
  • GR_Thrumboman
  • -
    - - -
  • Human
  • -
    -
    - - - - - - Dromedary_Group - -
  • Human
  • -
  • Dromedary
  • -
    - - -
  • GR_Hurseman
  • -
    -
    - - - Elk_Group - -
  • Human
  • -
  • Elk
  • -
    - - -
  • GR_Hurseman
  • -
    -
    - - - Horse_Group - -
  • Human
  • -
  • Horse
  • -
    - - -
  • GR_Hurseman
  • -
    -
    - - - Caribou_Group - -
  • Human
  • -
  • Caribou
  • -
    - - -
  • GR_Hurseman
  • -
    -
    - - - Donkey_Group - -
  • Human
  • -
  • Donkey
  • -
    - - -
  • GR_Hurseman
  • -
    -
    - - - GR_Hurseman_Group - -
  • Human
  • -
  • GR_Hurseman
  • -
    - - -
  • Human
  • -
    -
    - - - Megascarab_Group - -
  • Human
  • -
  • Megascarab
  • -
    - - -
  • GR_Manscarab
  • -
    -
    - - - Spelopede_Group - -
  • Human
  • -
  • Spelopede
  • -
    - - -
  • GR_Manscarab
  • -
    -
    - - - Megaspider_Group - -
  • Human
  • -
  • Megaspider
  • -
    - - -
  • GR_Manscarab
  • -
    -
    - - - GR_Manscarab_Group - -
  • Human
  • -
  • GR_Manscarab
  • -
    - - -
  • Human
  • -
    -
    - - - Iguana_Group - -
  • Human
  • -
  • Iguana
  • -
    - - -
  • GR_Lizardman
  • -
    -
    - - - Cobra_Group - -
  • Human
  • -
  • Cobra
  • -
    - - -
  • GR_Lizardman
  • -
    -
    - - - Tortoise_Group - -
  • Human
  • -
  • Tortoise
  • -
    - - -
  • GR_Lizardman
  • -
    -
    - - - GR_Lizardman_Group - -
  • Human
  • -
  • GR_Lizardman
  • -
    - - -
  • Human
  • -
    -
    - -
    diff --git a/Source/Animal_Inheritance/Patches/BasePregnancyPatcher.cs b/Source/Animal_Inheritance/Patches/BasePregnancyPatcher.cs deleted file mode 100644 index 1395575..0000000 --- a/Source/Animal_Inheritance/Patches/BasePregnancyPatcher.cs +++ /dev/null @@ -1,103 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; -using UnityEngine; -using HarmonyLib; -using rjw; - -namespace RJW_BGS -{ - [HarmonyPatch(typeof(Hediff_BasePregnancy))] - public class BasePregnancyPatcher - { - public static List supportedHybridRaces = new List() - { - "GR_Manbear", - "GR_Bearman", - "GR_Manalope", - "GR_Booman", - "GR_Manchicken", - "GR_Turkeyman", - "GR_Manffalo", - "GR_Muffaloman", - "GR_Manwolf", - "GR_Dogman", - "GR_Mancat", - "GR_Catman", - "GR_Mansquirrel", - "GR_Moleman", - "GR_Thrumboman", - "GR_Hurseman", - "GR_Manscarab", - "GR_Lizardman" - }; - - public static List supportedInitialAnimalRaces = new List() - { - "Bear_Grizzly", - "Bear_Polar", - "Boomalope", - "Chicken", - "Duck", - "Turkey", - "Goose", - "Ostrich", - "Emu", - "Cassowary", - "Cow", - "Muffalo", - "Bison", - "Yak", - "Warg", - "Wolf_Timber", - "Wolf_Arctic", - "Fox_Fennec", - "Fox_Red", - "Fox_Arctic", - "Husky", - "LabradorRetriever", - "YorkshireTerrier", - "Cougar", - "Panther", - "Lynx", - "Cat", - "GuineaPig", - "Hare", - "Snowhare", - "Squirrel", - "Rat", - "Raccoon", - "Thrumbo", - "Dromedary", - "Elk", - "Horse", - "Caribou", - "Donkey", - "Megascarab", - "Spelopede", - "Megaspider", - "Iguana", - "Cobra", - "Tortoise" - }; - - public static HediffDef controler = DefDatabase.GetNamed("rjw_genes_animal_control_hediff", false); - - [HarmonyPostfix] - [HarmonyPatch("GenerateBabies")] - public static void addHedif (Hediff_BasePregnancy __instance) - { - if (controler == null) return; - - foreach (Pawn baby in __instance.babies) - { - if(baby != null && supportedHybridRaces.Contains(baby.kindDef.race.defName)) - baby.health.AddHediff(controler); - } - } - - } -} diff --git a/Source/Animal_Inheritance/Patches/PregnancyHelperPatcher.cs b/Source/Animal_Inheritance/Patches/PregnancyHelperPatcher.cs deleted file mode 100644 index 0d7aafd..0000000 --- a/Source/Animal_Inheritance/Patches/PregnancyHelperPatcher.cs +++ /dev/null @@ -1,58 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; -using RJW_BGS; -using HarmonyLib; -using rjw; -using static rjw.Hediff_BasePregnancy; -using RJW_Genes; - -namespace RJW_BGS -{ - [HarmonyPatch(typeof(PregnancyHelper))] - public class PregnancyHelperPatcher - { - - [HarmonyPrefix] - [HarmonyPatch("AddPregnancyHediff")] - public static bool AddPregnancyHediffPrefix(Pawn mother, Pawn father) - { - if (!RJW_BGSSettings.rjw_bgs_VE_genetics) return true; - if (mother == null || father == null) return true; - bool humanMotherAndSupportedAnimal = mother.IsHuman() && BasePregnancyPatcher.supportedInitialAnimalRaces.Contains(father.kindDef.race.defName); - bool humanMotherAndSupportedHybrid = mother.IsHuman() && BasePregnancyPatcher.supportedHybridRaces.Contains(father.kindDef.race.defName); - bool humanFatherAndSupportedAnimal = father.IsHuman() && BasePregnancyPatcher.supportedInitialAnimalRaces.Contains(mother.kindDef.race.defName); - bool humanFatherAndSupportedHybrid = father.IsHuman() && BasePregnancyPatcher.supportedHybridRaces.Contains(mother.kindDef.race.defName); - - if (!(humanMotherAndSupportedAnimal || humanMotherAndSupportedHybrid||humanFatherAndSupportedAnimal|| humanFatherAndSupportedHybrid)) return true; - if (humanMotherAndSupportedAnimal) - { - Hediff_BasePregnancy.Create(mother, father, DnaGivingParent.Father); - return false; - } - else if (humanMotherAndSupportedHybrid) - { - if (RJW_Genes_Settings.rjw_genes_detailed_debug) - RJW_Genes.ModLog.Message("preg hediffdefof PregnantHuman " + RimWorld.HediffDefOf.PregnantHuman); - - PregnancyHelper.StartVanillaPregnancy(mother, father); - return false; - } - else if (humanFatherAndSupportedAnimal) - { - Hediff_BasePregnancy.Create(mother, father, DnaGivingParent.Mother); - return false; - } - else if (humanFatherAndSupportedHybrid) - { - Hediff_BasePregnancy.Create(mother, father, DnaGivingParent.Father); - return false; - } - return true; - } - - } -} diff --git a/Source/Animal_Inheritance/Settings/RJW_BGSSettings.cs b/Source/Animal_Inheritance/Settings/RJW_BGSSettings.cs index d853424..d619354 100644 --- a/Source/Animal_Inheritance/Settings/RJW_BGSSettings.cs +++ b/Source/Animal_Inheritance/Settings/RJW_BGSSettings.cs @@ -30,8 +30,6 @@ namespace RJW_BGS listing_Standard.Gap(5f); listing_Standard.CheckboxLabeled("genes as xenogenes", ref rjw_bgs_animal_genes_as_xenogenes, "If toggled, animal genes will be added as xenogenes.", 0f, 1f); listing_Standard.Gap(5f); - listing_Standard.CheckboxLabeled("enable VE genetics hybridation", ref rjw_bgs_VE_genetics, "If enabled and if you have VE genetics it will enable the hybridation system.", 0f, 1f); - listing_Standard.Gap(5f); listing_Standard.CheckboxLabeled("detailed-debug", ref rjw_bgs_detailed_debug, "Adds detailed information to the log about pregnancies and genes.", 0f, 1f); listing_Standard.End(); } @@ -43,13 +41,11 @@ namespace RJW_BGS Scribe_Values.Look(ref RJW_BGSSettings.rjw_bgs_global_gene_chance, "rjw_bgs_global_gene_chance", RJW_BGSSettings.rjw_bgs_global_gene_chance, true); Scribe_Values.Look(ref RJW_BGSSettings.rjw_bgs_animal_genes_as_xenogenes, "rjw_bgs_animal_genes_as_xenogenes", RJW_BGSSettings.rjw_bgs_animal_genes_as_xenogenes, true); Scribe_Values.Look(ref RJW_BGSSettings.rjw_bgs_detailed_debug, "rjw_bgs_detailed_debug", RJW_BGSSettings.rjw_bgs_detailed_debug, true); - Scribe_Values.Look(ref RJW_BGSSettings.rjw_bgs_VE_genetics, "rjw_bgs_VE_genetics", RJW_BGSSettings.rjw_bgs_VE_genetics, true); } public static float rjw_bgs_global_gene_chance = 1f; public static bool rjw_bgs_enabled = true; public static bool rjw_bgs_animal_genes_as_xenogenes = false; public static bool rjw_bgs_detailed_debug = false; - public static bool rjw_bgs_VE_genetics = true; } } diff --git a/Source/Common/patches/PatchGetParents.cs b/Source/Common/patches/PatchGetParents.cs index 98f3aff..9038d17 100644 --- a/Source/Common/patches/PatchGetParents.cs +++ b/Source/Common/patches/PatchGetParents.cs @@ -125,43 +125,5 @@ namespace RJW_Genes } } } - - [HarmonyPrefix] - [HarmonyPatch("SetFather")] - private static bool SetFatherPrefix(Pawn pawn, Pawn newFather) - { - Pawn father = pawn.GetFather(); - if (father != newFather) - { - if (father != null) - { - pawn.relations.RemoveDirectRelation(PawnRelationDefOf.Parent, father); - } - if (newFather != null) - { - pawn.relations.AddDirectRelation(PawnRelationDefOf.Parent, newFather); - } - } - return false; - } - - [HarmonyPrefix] - [HarmonyPatch("SetMother")] - private static bool SetMotherPrefix(Pawn pawn, Pawn newMother) - { - Pawn mother = pawn.GetMother(); - if (mother != newMother) - { - if (mother != null) - { - pawn.relations.RemoveDirectRelation(PawnRelationDefOf.Parent, mother); - } - if (newMother != null) - { - pawn.relations.AddDirectRelation(PawnRelationDefOf.Parent, newMother); - } - } - return false; - } } } diff --git a/Source/Common/patches/PatchPregnancyHelper.cs b/Source/Common/patches/PatchPregnancyHelper.cs index d646323..30aa788 100644 --- a/Source/Common/patches/PatchPregnancyHelper.cs +++ b/Source/Common/patches/PatchPregnancyHelper.cs @@ -32,11 +32,6 @@ namespace RJW_Genes Pawn giver = props.pawn; // orgasmer Pawn receiver = props.partner; - - if (receiver.genes == null) - { - return; - } Hediff vasectomy; receiver.health.hediffSet.TryGetHediff(vasectomydef, out vasectomy); @@ -45,7 +40,10 @@ namespace RJW_Genes List pawnparts = giver.GetGenitalsList(); List partnerparts = receiver.GetGenitalsList(); var interaction = rjw.Modules.Interactions.Helpers.InteractionHelper.GetWithExtension(props.dictionaryKey); - + if (receiver.genes == null) + { + return; + } if (!(props.sexType == xxx.rjwSextype.Anal && receiver.genes.HasActiveGene(GeneDefOf.rjw_genes_fertile_anus))) return; diff --git a/Source/GeneDefOf.cs b/Source/GeneDefOf.cs index 6049b8b..ef269cf 100644 --- a/Source/GeneDefOf.cs +++ b/Source/GeneDefOf.cs @@ -69,12 +69,7 @@ namespace RJW_Genes public static readonly GeneDef rjw_genes_mechbreeder; public static readonly GeneDef rjw_genes_zoophile; public static readonly GeneDef rjw_genes_fertile_anus; - public static readonly GeneDef rjw_genes_mating_call; - public static readonly GeneDef rjw_genes_fervent_ovipositor; - public static readonly GeneDef rjw_genes_insectbreeder; - public static readonly GeneDef rjw_genes_insectincubator; - - // Cum + // Cum public static readonly GeneDef rjw_genes_no_cum; public static readonly GeneDef rjw_genes_much_cum; public static readonly GeneDef rjw_genes_very_much_cum; @@ -102,8 +97,6 @@ namespace RJW_Genes public static readonly GeneDef rjw_genes_aphrodisiac_pheromones; public static readonly GeneDef rjw_genes_sexual_mytosis; public static readonly GeneDef rjw_genes_hormonal_saliva; - public static readonly GeneDef rjw_genes_cocoonweaver; - public static readonly GeneDef rjw_genes_sex_tamer; // Cosmetic public static readonly GeneDef rjw_genes_succubus_tail; diff --git a/Source/Genes/Breeding/Abilities/CompAbilityEffect_MatingCall.cs b/Source/Genes/Breeding/Abilities/CompAbilityEffect_MatingCall.cs deleted file mode 100644 index e50291b..0000000 --- a/Source/Genes/Breeding/Abilities/CompAbilityEffect_MatingCall.cs +++ /dev/null @@ -1,36 +0,0 @@ -using RimWorld; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse.Sound; -using Verse; -using RimWorld.Planet; -using rjw; -using HarmonyLib; -using Verse.AI; - -namespace RJW_Genes -{ - public class CompAbilityEffect_MatingCall : CompAbilityEffect - { - - bool fired = false; - private new CompProperties_AbilityMatingCall Props - { - get - { - return (CompProperties_AbilityMatingCall)this.props; - } - } - - public override void Apply(LocalTargetInfo target, LocalTargetInfo dest) - { - base.Apply(target, dest); - ModLog.Message($"{this.parent.pawn} is casting MatingCall"); - AnimalBreedingHelper.DoAnimalBreedingPulse(this.parent.pawn, Props.calldistance); - } - - } -} diff --git a/Source/Genes/Breeding/Abilities/CompAbilityEffect_PheromoneSpit.cs b/Source/Genes/Breeding/Abilities/CompAbilityEffect_PheromoneSpit.cs deleted file mode 100644 index 5064003..0000000 --- a/Source/Genes/Breeding/Abilities/CompAbilityEffect_PheromoneSpit.cs +++ /dev/null @@ -1,31 +0,0 @@ -using RimWorld; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; -using Verse.AI; - -namespace RJW_Genes -{ - public class CompAbilityEffect_PheromoneSpit : CompAbilityEffect - { - bool fired = false; - private new CompProperties_AbilityPheromoneSpit Props - { - get - { - return (CompProperties_AbilityPheromoneSpit)this.props; - } - } - - public override void Apply(LocalTargetInfo target, LocalTargetInfo dest) - { - base.Apply(target, dest); - AnimalBreedingHelper.DoAnimalBreedingPulse(target.Pawn, Props.calldistance); - } - - } -} diff --git a/Source/Genes/Breeding/Abilities/CompProperties_AbilityMatingCall.cs b/Source/Genes/Breeding/Abilities/CompProperties_AbilityMatingCall.cs deleted file mode 100644 index e30485c..0000000 --- a/Source/Genes/Breeding/Abilities/CompProperties_AbilityMatingCall.cs +++ /dev/null @@ -1,20 +0,0 @@ -using RimWorld; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace RJW_Genes -{ - public class CompProperties_AbilityMatingCall : CompProperties_AbilityEffect - { - - public int calldistance; - - public CompProperties_AbilityMatingCall() - { - this.compClass = typeof(CompAbilityEffect_MatingCall); - } - } -} diff --git a/Source/Genes/Breeding/Abilities/CompProperties_AbilityPheromoneSpit.cs b/Source/Genes/Breeding/Abilities/CompProperties_AbilityPheromoneSpit.cs deleted file mode 100644 index 381843f..0000000 --- a/Source/Genes/Breeding/Abilities/CompProperties_AbilityPheromoneSpit.cs +++ /dev/null @@ -1,18 +0,0 @@ -using RimWorld; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace RJW_Genes { - public class CompProperties_AbilityPheromoneSpit : CompProperties_AbilityEffect - { - public int calldistance; - - public CompProperties_AbilityPheromoneSpit() - { - this.compClass = typeof(CompAbilityEffect_PheromoneSpit); - } - } -} diff --git a/Source/Genes/Breeding/AnimalBreedingHelper.cs b/Source/Genes/Breeding/AnimalBreedingHelper.cs deleted file mode 100644 index f2386e9..0000000 --- a/Source/Genes/Breeding/AnimalBreedingHelper.cs +++ /dev/null @@ -1,70 +0,0 @@ -using RimWorld; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse.AI; -using Verse; - -namespace RJW_Genes -{ - public class AnimalBreedingHelper - { - - /// - /// Finds animals in a distance around a pawn, and schedules a breeding job. - /// This is done regardless of the animals genitalia at the moment. - /// This function has no checks if the Pawn is hostile, downed, etc., such checks must be done upstream! - /// - /// The pawn that will be target of breeding animals - /// The range around the pawn for which animals will be triggered. - public static void DoAnimalBreedingPulse(Pawn toBeBred, int pulse_distance, bool ends_manhunter = true) - { - IEnumerable animals = GetAnimalsInRange(toBeBred.Map, toBeBred.Position, pulse_distance); - int breeder_counter = 0; - - foreach (Pawn animal in animals) - { - if (ends_manhunter) - EndManHunter(animal); - ForceBreedingJob(toBeBred, animal); - breeder_counter++; - } - ModLog.Message($"{breeder_counter} of {animals.Count()} Animals in range are trying to breed {toBeBred}"); - } - - private static IEnumerable GetAnimalsInRange(Map map, IntVec3 position, int distance) - { - IEnumerable animals = - map.mapPawns - .AllPawnsSpawned - .Where((Func)(p => - p.IsNonMutantAnimal - && p.Position.InHorDistOf(position, distance) - && xxx.is_healthy_enough(p)) - ); - - return animals; - } - - private static void ForceBreedingJob(Pawn toBeBred, Pawn animal) - { - // Stopping all Jobs in this way is a bit heavy - but as it's only about Animals this should be fine. - animal.jobs.CaptureAndClearJobQueue(); - animal.jobs.StopAll(); - Job job = JobMaker.MakeJob(xxx.animalBreed, toBeBred); - animal.jobs.TryTakeOrderedJob(job); - } - - private static void EndManHunter(Pawn animal) - { - if (animal.MentalState != null && (animal.MentalState.def == MentalStateDefOf.Manhunter || animal.MentalState.def == MentalStateDefOf.ManhunterPermanent)) - { - animal?.MentalState?.RecoverFromState(); - } - - } - } -} diff --git a/Source/Genes/Breeding/Genes/Gene_FerventOvipositor.cs b/Source/Genes/Breeding/Gene_FerventOvipositor.cs similarity index 100% rename from Source/Genes/Breeding/Genes/Gene_FerventOvipositor.cs rename to Source/Genes/Breeding/Gene_FerventOvipositor.cs diff --git a/Source/Genes/Breeding/Genes/Gene_InsectIncubator.cs b/Source/Genes/Breeding/Gene_InsectIncubator.cs similarity index 100% rename from Source/Genes/Breeding/Genes/Gene_InsectIncubator.cs rename to Source/Genes/Breeding/Gene_InsectIncubator.cs diff --git a/Source/Genes/Breeding/Genes/Gene_MechBreeder.cs b/Source/Genes/Breeding/Gene_MechBreeder.cs similarity index 100% rename from Source/Genes/Breeding/Genes/Gene_MechBreeder.cs rename to Source/Genes/Breeding/Gene_MechBreeder.cs diff --git a/Source/Genes/Breeding/Patches/PatchMechBirth.cs b/Source/Genes/Breeding/PatchMechBirth.cs similarity index 100% rename from Source/Genes/Breeding/Patches/PatchMechBirth.cs rename to Source/Genes/Breeding/PatchMechBirth.cs diff --git a/Source/Genes/Cum/Patch_TransferNutrition.cs b/Source/Genes/Cum/Patch_TransferNutrition.cs index 3e81a5f..1f3f0bb 100644 --- a/Source/Genes/Cum/Patch_TransferNutrition.cs +++ b/Source/Genes/Cum/Patch_TransferNutrition.cs @@ -9,7 +9,6 @@ using HarmonyLib; using rjw; using RimWorld; using Verse; -using LicentiaLabs; namespace RJW_Genes @@ -29,16 +28,18 @@ namespace RJW_Genes // Design decision: // I could have done some transpiler stuff, but that is scary and might need to be adjusted quite a lot // Hence, I simply re-book the nutrition back to the giver in the Postfix. That should be robust and easy. + + /* + TODO: Move this back in, once Licentia is 1.5 compatible. It should not drastically change. if (GeneUtility.IsGenerousDonor(giver)) { float donatedNutrition = CumflationHelper.CalculateNutritionAmount(giver, cumAmount); // TODO: In theory, there could be something weird happening if the donor has food less than X and the "IgnoreThermodynamics" is set on. // Then it can happen that the donor ends up with more food than he had before cumshot, but I think that is somewhat funny given that you have ignore Thermodynamics on. Need_Food inflatorFood = giver.needs.TryGetNeed(); - if (inflatorFood != null) - inflatorFood.CurLevel += donatedNutrition; + inflatorFood.CurLevel += donatedNutrition; } - + */ } } } \ No newline at end of file diff --git a/Source/Genes/Damage/Gene_Elasticity.cs b/Source/Genes/Damage/Gene_Elasticity.cs index 3da6ecf..5d26c07 100644 --- a/Source/Genes/Damage/Gene_Elasticity.cs +++ b/Source/Genes/Damage/Gene_Elasticity.cs @@ -1,4 +1,4 @@ -using LicentiaLabs; +//using LicentiaLabs; using Verse; @@ -15,7 +15,7 @@ namespace RJW_Genes { private const int RESET_INTERVAL = 60000; // 60k should be 1 day - + /* public override void PostAdd() { base.PostAdd(); @@ -51,6 +51,6 @@ namespace RJW_Genes candidate.Severity = severity; } } - + */ } } \ No newline at end of file diff --git a/Source/Genes/ExtraGenitalia/Gene_Femboy.cs b/Source/Genes/ExtraGenitalia/Gene_Femboy.cs index e86beed..6641025 100644 --- a/Source/Genes/ExtraGenitalia/Gene_Femboy.cs +++ b/Source/Genes/ExtraGenitalia/Gene_Femboy.cs @@ -55,18 +55,6 @@ 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 df48328..97c4365 100644 --- a/Source/Genes/Gender/Gene_FemaleOnly.cs +++ b/Source/Genes/Gender/Gene_FemaleOnly.cs @@ -36,18 +36,6 @@ 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 d99652a..e081700 100644 --- a/Source/Genes/Gender/Gene_MaleOnly.cs +++ b/Source/Genes/Gender/Gene_MaleOnly.cs @@ -36,18 +36,6 @@ 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 61430a2..fce2ded 100644 --- a/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs +++ b/Source/Genes/Genitalia/Defs/GenitaliaTypeExtension.cs @@ -11,8 +11,5 @@ 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 21fada8..7ffda55 100644 --- a/Source/Genes/Genitalia/Gene_GenitaliaType.cs +++ b/Source/Genes/Genitalia/Gene_GenitaliaType.cs @@ -17,7 +17,7 @@ namespace RJW_Genes Apply(); } - public virtual void Apply() + protected 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, genitals.breasts); + GenitaliaChanger.ChangeGenitalia(pawn, genitals.penis, genitals.vagina, genitals.anus); } } } diff --git a/Source/Genes/Genitalia/GenitaliaChanger.cs b/Source/Genes/Genitalia/GenitaliaChanger.cs index 71f0f05..86d112b 100644 --- a/Source/Genes/Genitalia/GenitaliaChanger.cs +++ b/Source/Genes/Genitalia/GenitaliaChanger.cs @@ -2,7 +2,6 @@ using RimWorld; using Verse; using System.Collections.Generic; -using rjw.Modules.Interactions.DefModExtensions; namespace RJW_Genes { @@ -17,7 +16,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 , HediffDef breastsReplacement = null) + public static void ChangeGenitalia(Pawn pawn, HediffDef penisReplacement = null, HediffDef vaginaReplacement = null, HediffDef anusReplacement = null) { var oldParts = Genital_Helper.get_AllPartsHediffList(pawn); BodyPartRecord correctBPR; @@ -41,12 +40,6 @@ 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); @@ -81,18 +74,7 @@ namespace RJW_Genes { return candidate.def.defName.ToLower().Contains("anus"); } - - 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) + public static bool IsArtificial(Hediff candidate) { return candidate.def.defName.ToLower().Contains("bionic") || candidate.def.defName.ToLower().Contains("archo"); } @@ -106,7 +88,5 @@ namespace RJW_Genes } } - - } } diff --git a/Source/Genes/Genitalia/GenitaliaUtility.cs b/Source/Genes/Genitalia/GenitaliaUtility.cs index 6a6ba79..a56d9ae 100644 --- a/Source/Genes/Genitalia/GenitaliaUtility.cs +++ b/Source/Genes/Genitalia/GenitaliaUtility.cs @@ -16,11 +16,12 @@ 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; } @@ -45,7 +46,23 @@ namespace RJW_Genes public static HediffDef GetBreastsForGene(GeneDef gene) { - return gene?.GetModExtension()?.breasts ?? Genital_Helper.average_breasts; + 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; + } } public static bool PawnStillNeedsGenitalia(Pawn pawn) diff --git a/Source/Genes/Quirks/Defs/QirkExtension.cs b/Source/Genes/Quirks/Defs/QirkExtension.cs deleted file mode 100644 index 8e90319..0000000 --- a/Source/Genes/Quirks/Defs/QirkExtension.cs +++ /dev/null @@ -1,12 +0,0 @@ -using Verse; -using RimWorld; -using rjw; -using System; - -namespace RJW_Genes -{ - public class QirkExtension : DefModExtension - { - public string Satisfiedquirk; - } -} diff --git a/Source/Genes/Quirks/QuirkPatcher.cs b/Source/Genes/Quirks/QuirkPatcher.cs deleted file mode 100644 index ac2b477..0000000 --- a/Source/Genes/Quirks/QuirkPatcher.cs +++ /dev/null @@ -1,64 +0,0 @@ -using Verse; -using RimWorld; -using rjw; -using System.Collections.Generic; -using rjw.Modules.Quirks; -using System; - -namespace RJW_Genes -{ - public class QuirkPatcher - { - /// - /// This Patch is applied after the quirk-satisfaction and checks - /// a) which quirks can the sex-partner satisfy? - /// b) which of the quirks has the pawn? - /// - /// The result of the Satisfied is an integer, based on the original framework. - /// The framework "just checks" the number of satisfied quirks - we increase this number with this postfix. - /// - public static void CountSatisfiedPostfix(ref int __result, SexProps props) - { - if (props == null) return; - Pawn pawn = props.pawn; - Pawn partner = props.partner; - if (partner == null || pawn == null) return; - if(!pawn.IsHuman()||!partner.IsHuman()) return; - - List potentiallySatisfiedQuirks = new List(); - foreach (Gene gene in partner.genes.GenesListForReading) - { - if (partner.genes.HasActiveGene(gene.def)) - { - string satisfiable_quirk = gene.def?.GetModExtension()?.Satisfiedquirk; - if (!string.IsNullOrEmpty(satisfiable_quirk)) - { - potentiallySatisfiedQuirks.Add(satisfiable_quirk); - } - } - } - - int QuirksSatisfiedByGenes = -1; - - foreach (Quirk quirk in Quirk.All) - { - if (pawn.Has(quirk)) - { - foreach (string satisfiableQuirk in potentiallySatisfiedQuirks) - { - if (!string.IsNullOrEmpty(satisfiableQuirk) && quirk.LocaliztionKey == satisfiableQuirk) - { - QuirksSatisfiedByGenes++; - Quirk.AddThought(pawn); - } - } - } - } - - if(QuirksSatisfiedByGenes > 0) - __result = __result + QuirksSatisfiedByGenes; - return; - } - - } -} diff --git a/Source/Genes/Special/Patches/Patch_OrgasmMytosis.cs b/Source/Genes/Special/Patches/Patch_OrgasmMytosis.cs index ff5ab07..709d05b 100644 --- a/Source/Genes/Special/Patches/Patch_OrgasmMytosis.cs +++ b/Source/Genes/Special/Patches/Patch_OrgasmMytosis.cs @@ -1,6 +1,5 @@ using HarmonyLib; using RimWorld; -using RimWorld.BaseGen; using RimWorld.QuestGen; using rjw; using rjw.Modules.Shared.Extensions; @@ -11,7 +10,6 @@ using System.Text; using System.Threading.Tasks; using Verse; - namespace RJW_Genes { @@ -26,19 +24,13 @@ namespace RJW_Genes private const float SEVERITY_INCREASE_PER_ORGASM = 0.075f; - public static void Postfix(JobDriver_Sex __instance) + public static void Postfix(JobDriver_Sex __instance) { Pawn orgasmingPawn = __instance.pawn; - bool hasPollutedMytosis = false; - - if (orgasmingPawn != null && (GeneUtility.HasGeneNullCheck(orgasmingPawn, GeneDefOf.rjw_genes_sexual_mytosis) || hasPollutedMytosis) && ! orgasmingPawn.health.hediffSet.HasHediff(HediffDefOf.rjw_genes_mytosis_shock_hediff)) + if (orgasmingPawn != null && GeneUtility.HasGeneNullCheck(orgasmingPawn, GeneDefOf.rjw_genes_sexual_mytosis) && ! orgasmingPawn.health.hediffSet.HasHediff(HediffDefOf.rjw_genes_mytosis_shock_hediff)) { var mytosisHediff = GetOrgasmMytosisHediff(orgasmingPawn); mytosisHediff.Severity += SEVERITY_INCREASE_PER_ORGASM; - if(hasPollutedMytosis && orgasmingPawn.Spawned && GridsUtility.IsPolluted(orgasmingPawn.Position, orgasmingPawn.Map)) - { - mytosisHediff.Severity -= SEVERITY_INCREASE_PER_ORGASM; - } if (mytosisHediff.Severity >= 1.0) { @@ -171,6 +163,7 @@ namespace RJW_Genes private static Pawn_GeneTracker CopyGeneTracker(Pawn toCopyTo, Pawn_GeneTracker toCopyFrom) { var tracker = new Pawn_GeneTracker(toCopyTo); + // Due to Overwrite logics, we first add Endogenes and then a second pass on xenogenes // Pass 1: Endogenes @@ -189,6 +182,12 @@ namespace RJW_Genes } tracker.Reset(); + var skin = tracker.GetMelaninGene(); + var hair = tracker.GetHairColorGene(); + + //ModLog.Message($"{toCopyTo} had Skin {skin.defName} and {hair.defName} as colour-genes"); + + return tracker; } @@ -295,6 +294,7 @@ namespace RJW_Genes } } + } /* @@ -318,4 +318,5 @@ Verse.TickList:Tick () Verse.TickManager:TickManagerUpdate () Verse.Game:UpdatePlay () Verse.Root_Play:Update () + */ \ No newline at end of file diff --git a/Source/Genes/Special/Patches/Patch_SexualTamer.cs b/Source/Genes/Special/Patches/Patch_SexualTamer.cs deleted file mode 100644 index 15215af..0000000 --- a/Source/Genes/Special/Patches/Patch_SexualTamer.cs +++ /dev/null @@ -1,57 +0,0 @@ -using HarmonyLib; -using RimWorld; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; -using static RJWSexperience.RsDefOf; - -namespace RJW_Genes -{ - - [HarmonyPatch(typeof(SexUtility), nameof(SexUtility.SatisfyPersonal))] - public static class Patch_SexualTamer - { - - public static void Postfix(SexProps props) - { - // ShortCuts: Exit Early if Pawn or Partner are null (can happen with Masturbation or other nieche-cases) - if (props == null || props.pawn == null || !props.hasPartner() || props.partner == null) - return; - // Exit for non Animals or Animal on Animal - if (!(props.pawn.IsAnimal() || props.partner.IsAnimal() ) ) - return; - Pawn animal = props.pawn.IsAnimal() ? props.pawn : props.partner; - Pawn human = props.pawn.IsAnimal() ? props.partner : props.pawn; - - // Another Short Sanity Check - if (animal == null || human == null ) return; - if (human.genes == null) return; - - if (human.genes.HasActiveGene(GeneDefOf.rjw_genes_sex_tamer)) - { - // Case 1: Wild Animal - Try to Tame - if (animal.AnimalOrWildMan() && animal.Faction == null) - { - if(RJW_Genes_Settings.rjw_genes_detailed_debug) - ModLog.Message($"{human} is a sextamer with bestiality on wild animal {animal} - trying to recruit"); - human.interactions.TryInteractWith(animal, InteractionDefOf.TameAttempt); - } - // Case 2: Colony Animal - Try to Train - else if (human.Faction != null && animal.Faction == human.Faction && animal.training != null) - { - if (RJW_Genes_Settings.rjw_genes_detailed_debug) - ModLog.Message($"{human} is a sextamer with bestiality on colony animal {animal} - trying to train"); - var trainable = animal.training.NextTrainableToTrain(); - animal.training.Train(trainable, human); - } - } - } - - } - - -} diff --git a/Source/HarmonyInit.cs b/Source/HarmonyInit.cs index f4396b9..c2cba10 100644 --- a/Source/HarmonyInit.cs +++ b/Source/HarmonyInit.cs @@ -4,73 +4,50 @@ using System; using rjw; using RJWLoveFeeding; using RimWorld; -using System.Linq; namespace RJW_Genes { [StaticConstructorOnStartup] internal static class HarmonyInit { - static HarmonyInit() { Harmony harmony = new Harmony("rjw_genes"); - var RJW_Pregnancy_Tick_Prefixes = typeof(Hediff_Pregnant).GetMethod("Tick"); - harmony.Unpatch(RJW_Pregnancy_Tick_Prefixes, HarmonyPatchType.Prefix, "rjw"); + var original = typeof(Hediff_Pregnant).GetMethod("Tick"); + harmony.Unpatch(original, HarmonyPatchType.Prefix, "rjw"); harmony.PatchAll(); if (ModsConfig.BiotechActive) { harmony.Patch(typeof(SexUtility).GetMethod("ProcessSex"), new HarmonyMethod(typeof(LustFeeding), "Postfix", null)); } + // Non-rapist would_rape bypass for limbic stimulator harmony.Patch(AccessTools.Method(typeof(SexAppraiser), nameof(SexAppraiser.would_rape)), postfix: new HarmonyMethod(typeof(PatchImplants), nameof(PatchImplants.would_rape_PostFix))); + // Non-rapist is_rapist bypass for limbic stimulator harmony.Patch(AccessTools.Method(typeof(xxx), nameof(xxx.is_rapist)), postfix: new HarmonyMethod(typeof(PatchImplants), nameof(PatchImplants.is_rapist_PostFix))); + // Non-Rapist trait rape thoughts harmony.Patch(AccessTools.Method(typeof(AfterSexUtility), nameof(AfterSexUtility.think_about_sex_Rapist)), postfix: new HarmonyMethod(typeof(PatchImplants), nameof(PatchImplants.think_about_sex_Rapist_PostFix))); + // Bioscaffold double gestation speed tick harmony.Patch(AccessTools.Method(typeof(PawnUtility), nameof(PawnUtility.BodyResourceGrowthSpeed)), postfix: new HarmonyMethod(typeof(PatchImplants), nameof(PatchImplants.MultiplyPregnancy))); + // Hediff_Labor state capture harmony.Patch(AccessTools.Method(typeof(Hediff_Labor), nameof(Hediff_Labor.PostRemoved)), postfix: new HarmonyMethod(typeof(PatchLitteredBirth), nameof(PatchLitteredBirth.Hediff_Labor_PostRemovedPostFix))); // OvaryAgitator/Gene_LitteredBirths multibirth logic harmony.Patch(AccessTools.Method(typeof(Hediff_LaborPushing), nameof(Hediff_LaborPushing.PostRemoved)), postfix: new HarmonyMethod(typeof(PatchLitteredBirth), nameof(PatchLitteredBirth.Hediff_LaborPushing_PostRemovedPostFix))); - - harmony.Patch(AccessTools.Method(typeof(Quirk), nameof(Quirk.CountSatisfiedQuirks)), - postfix: new HarmonyMethod(typeof(QuirkPatcher), nameof(QuirkPatcher.CountSatisfiedPostfix))); - // Patch Licentia, if Licentia exists // Logic & Explanation taken from https://rimworldwiki.com/wiki/Modding_Tutorials/Compatibility_with_DLLs // Adjusted to use ModsConfig (which makes it work, the example above does not run out of the box) - try - { - ((Action)(() => - { - if (ModsConfig.IsActive("LustLicentia.RJWLabs")) - { - // Gene: Cumflation Immunity [Prefix Patch] - harmony.Patch(AccessTools.Method(typeof(LicentiaLabs.CumflationHelper), nameof(LicentiaLabs.CumflationHelper.Cumflation)), - prefix: new HarmonyMethod(typeof(Patch_Cumflation), nameof(Patch_Cumflation.Prefix))); - // Gene: Generous Donor [Postfix Patch] - harmony.Patch(AccessTools.Method(typeof(LicentiaLabs.CumflationHelper), nameof(LicentiaLabs.CumflationHelper.TransferNutrition)), - postfix: new HarmonyMethod(typeof(Patch_TransferNutrition), nameof(Patch_TransferNutrition.Postfix))); - // Gene: CumEater [Postfix Patch] -- This is not exactly licentia, but the Generous-Donor Gene is only active with Licentia - harmony.Patch(AccessTools.Method(typeof(rjw.JobDriver_Sex), nameof(rjw.JobDriver_Sex.ChangePsyfocus)), - postfix: new HarmonyMethod(typeof(Patch_SexTicks_ChangePsyfocus), nameof(Patch_SexTicks_ChangePsyfocus.Postfix))); - } - }))(); - } - catch (TypeLoadException ex) - { - // To be expected for people without Licentia Labs - } } } diff --git a/Source/HediffDefOf.cs b/Source/HediffDefOf.cs index 443c32e..2ff339c 100644 --- a/Source/HediffDefOf.cs +++ b/Source/HediffDefOf.cs @@ -22,5 +22,18 @@ namespace RJW_Genes public static readonly HediffDef OvaryAgitator; public static readonly HediffDef Bioscaffold; + + public static HediffDef NeedlePenis = HediffDef.Named("NeedlePenis"); + public static HediffDef PigPenis = HediffDef.Named("PigPenis"); + public static HediffDef MarinePenis = HediffDef.Named("MarinePenis"); + public static HediffDef TentaclePenis = HediffDef.Named("TentaclePenis"); + public static HediffDef GolemPenis = HediffDef.Named("GolemPenis"); + public static HediffDef OrcPenis = HediffDef.Named("OrcPenis"); + public static HediffDef GhostPenis = HediffDef.Named("GhostPenis"); + public static HediffDef NecroPenis = HediffDef.Named("NecroPenis"); + public static HediffDef GhostVagina = HediffDef.Named("GhostVagina"); + public static HediffDef Vagina = HediffDef.Named("Vagina"); + public static HediffDef Penis = HediffDef.Named("Penis"); + public static HediffDef Anus = HediffDef.Named("Anus"); } } diff --git a/Source/RJW.dll b/Source/RJW.dll new file mode 100644 index 0000000..c07fda1 Binary files /dev/null and b/Source/RJW.dll differ diff --git a/Source/RJWSexperience.dll b/Source/RJWSexperience.dll new file mode 100644 index 0000000..533e46c Binary files /dev/null and b/Source/RJWSexperience.dll differ diff --git a/Source/Rjw-Genes.csproj b/Source/Rjw-Genes.csproj index 7b8559b..757086f 100644 --- a/Source/Rjw-Genes.csproj +++ b/Source/Rjw-Genes.csproj @@ -48,13 +48,11 @@ - - @@ -66,13 +64,8 @@ - - - - - - - + + @@ -83,8 +76,8 @@ - - + + @@ -168,8 +161,6 @@ - - @@ -177,7 +168,6 @@ - @@ -199,6 +189,8 @@ + + @@ -211,10 +203,8 @@ ..\..\..\RimWorldWin64_Data\Managed\Assembly-CSharp.dll False - - ..\..\licentia-labs-master\Assemblies\LicentiaLabs.dll - - + + False ..\..\rjw\1.5\Assemblies\RJW.dll False @@ -241,8 +231,5 @@ - - - \ No newline at end of file