diff --git a/Common/Assemblies/Rjw-Genes.dll b/Common/Assemblies/Rjw-Genes.dll index bd8049f..b65ab1a 100644 Binary files a/Common/Assemblies/Rjw-Genes.dll and b/Common/Assemblies/Rjw-Genes.dll differ diff --git a/Common/Defs/Genes/GeneCategories.xml b/Common/Defs/Genes/GeneCategories.xml index 68dc199..ab92117 100644 --- a/Common/Defs/Genes/GeneCategories.xml +++ b/Common/Defs/Genes/GeneCategories.xml @@ -50,9 +50,15 @@ - rjw_damage + rjw_genes_damage 11 + + rjw_genes_special + + 8 + + \ No newline at end of file diff --git a/Common/Defs/Genes/GeneDefs_Damage.xml b/Common/Defs/Genes/GeneDefs_Damage.xml index 5922066..b3c21ef 100644 --- a/Common/Defs/Genes/GeneDefs_Damage.xml +++ b/Common/Defs/Genes/GeneDefs_Damage.xml @@ -4,7 +4,7 @@ rjw_genes_elasticity - rjw_damage + rjw_genes_damage This Xenotype cannot get stretched by huge penetrators. Genes/Icons/Elasticity RJW_Genes.Gene_Elasticity diff --git a/Common/Defs/Genes/GeneDefs_SexSpecial.xml b/Common/Defs/Genes/GeneDefs_SexSpecial.xml new file mode 100644 index 0000000..51d4269 --- /dev/null +++ b/Common/Defs/Genes/GeneDefs_SexSpecial.xml @@ -0,0 +1,13 @@ + + + + rjw_genes_orgasm_rush + + rjw_genes_special + On Orgasm, carriers of this gene get a boost in activity. (rest-need is partially filled) + 1 + UI/Memes/FleshPurity + 1 + + + \ No newline at end of file diff --git a/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml b/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml index 8453665..cfd2154 100644 --- a/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml +++ b/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml @@ -6,7 +6,31 @@
  • Ears_Floppy - 0.9 + 0.75 +
  • +
  • + Tail_Furry + 0.2 +
  • +
  • + Furskin + 0.5 +
  • +
  • + rjw_genes_canine_genitalia + 0.4 +
  • +
  • + ViolenceDisabled + 0.05 +
  • +
  • + PsychicBonding + 0.05 +
  • +
  • + Mood_Sanguine + 0.1
  • @@ -19,6 +43,30 @@
  • 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
  • @@ -27,10 +75,22 @@ Feline Feline_Group +
  • + Tail_Furry + 0.2 +
  • +
  • + Furskin + 0.5 +
  • Ears_Cat 0.9
  • +
  • + PsychicBonding + 0.05 +
  • Sleepy 0.25 @@ -38,21 +98,49 @@
  • DarkVision 0.25 +
  • +
  • + rjw_genes_feline_genitalia + 0.25
  • - + Dragon Dragon_Group @@ -64,6 +152,38 @@
  • Headbone_CenterHorn 0.9 +
  • +
  • + VoiceRoar + 0.6 +
  • +
  • + MaxTemp_SmallIncrease + 0.7 +
  • +
  • + MaxTemp_LargeIncrease + 0.1 +
  • +
  • + rjw_genes_draconic_genitalia + 0.6 +
  • +
  • + FireResistant + 0.15 +
  • +
  • + rjw_genes_much_cum + 0.3 +
  • +
  • + rjw_genes_very_much_cum + 0.05 +
  • +
  • + Body_Hulk + 0.7
  • @@ -72,9 +192,33 @@ Rodent Rodent_Group +
  • + Furskin + 0.2 +
  • Fertile 0.25 +
  • +
  • + FastRunner + 0.6 +
  • +
  • + rjw_genes_small_genitalia + 0.6 +
  • +
  • + Immunity_Strong + 0.4 +
  • +
  • + ToxicEnvironmentResistance_Partial + 0.1 +
  • +
  • + Body_Thin + 0.45
  • @@ -83,34 +227,27 @@ Racoon Raccon_Group +
  • + Furskin + 0.25 +
  • +
  • + Tail_Furry + 0.25 +
  • StrongStomach 0.5 -
  • + +
  • + Immunity_Strong + 0.2 +
  • +
  • + ToxicEnvironmentResistance_Partial + 0.1 +
  • - - + \ No newline at end of file diff --git a/README.md b/README.md index 5abb92e..ec21dd7 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ This is my first Mod I started from scratch so any feedback is very welcome. See [planned things](TODOS.md) and feel free to contribute. With the Human-Animal-Gene Inheritance we have a lot of XML that you can contribute! -We have a [template](./Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml) and you can add animals and/or genes from mods there. +We have a [template](./Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml) and you can add animals and/or genes from mods there (Racegroups are base-rjw). ## Bugs? diff --git a/Source/GeneDefOf.cs b/Source/GeneDefOf.cs index 859f9e3..744eb11 100644 --- a/Source/GeneDefOf.cs +++ b/Source/GeneDefOf.cs @@ -10,6 +10,8 @@ namespace RJW_Genes public static readonly GeneCategoryDef rjw_genes_genitalia_size; public static readonly GeneCategoryDef rjw_genes_gender; public static readonly GeneCategoryDef rjw_genes_breeding; + public static readonly GeneCategoryDef rjw_genes_damage; + public static readonly GeneCategoryDef rjw_genes_special; // Base Genitalia Types public static readonly GeneDef rjw_genes_equine_genitalia; @@ -65,5 +67,9 @@ namespace RJW_Genes // Damage & Side Effects [MayRequire("LustLicentia.RJWLabs")] public static readonly GeneDef rjw_genes_elasticity; + + // Special + public static readonly GeneDef rjw_genes_orgasm_rush; + } } diff --git a/Source/Genes/Special/Patch_OrgasmRush.cs b/Source/Genes/Special/Patch_OrgasmRush.cs new file mode 100644 index 0000000..7f4c167 --- /dev/null +++ b/Source/Genes/Special/Patch_OrgasmRush.cs @@ -0,0 +1,31 @@ +using HarmonyLib; +using rjw; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace RJW_Genes +{ + + [HarmonyPatch(typeof(SexUtility), nameof(SexUtility.SatisfyPersonal))] + public static class Patch_OrgasmRush + { + + private const float REST_INCREASE = 0.05f; + + public static void Postfix(SexProps props) + { + // ShortCuts: Exit Early if Pawn or Partner are null (can happen with Animals or Masturbation) + if (props.pawn == null || !props.hasPartner()) + return; + + if (props.pawn.genes.HasGene(GeneDefOf.rjw_genes_orgasm_rush)) + { + props.pawn.needs.rest.CurLevel += REST_INCREASE; + } + } + } + +} diff --git a/Source/Rjw-Genes.csproj b/Source/Rjw-Genes.csproj index 94d2403..554b542 100644 --- a/Source/Rjw-Genes.csproj +++ b/Source/Rjw-Genes.csproj @@ -116,6 +116,7 @@ + diff --git a/TODOS.md b/TODOS.md index a03b835..0dc2a0a 100644 --- a/TODOS.md +++ b/TODOS.md @@ -12,10 +12,14 @@ Showstopper here is the amount of code required, and that I need to understand a **Infectious Hypersexuality Gene** (Maybe?) add Hypersexuality Gene through sex with a certain chance. -**Stat Boost on Orgasm** restore stamina - **Cum Addiction** add Cum-Addiction from Sexpererience, slowly loose conciousness while addiction is not attended. +**Cum-Drugs** eating cum has an effect similar to Go-Juice (including (separate?) addiction) + +**More Orgasm Boost** currently only does sleep, other things could be cool here too. Maybe a separate hediff boosting movement or fight. + +**Self-Fertilizing Eggs** Pawns fertilize eggs that are put inside them (with themselves as a parent) + ## Animal Gene Inheritance It should be doable to have a per-category list of genes that a child can inherit on bestiality. @@ -34,4 +38,11 @@ There were some suggestions on the Discord I saved them somewhere else. I am far - Genitalia deal damage as per size (on normal sex-use) - Genitalia can cause Terror (as ability) - Cumshot Sniper Abilities -- Healing Pussy \ No newline at end of file +- Healing Pussy + +## Things to add/change for base-rjw + +(Bit dependable on RJW-Core people) + +1. Make Racegroup-Defs accessible and non-private [This file here](https://gitgud.io/Ed86/rjw/-/blob/master/1.4/Source/Common/Helpers/RaceGroupDef_Helper.cs) +2. Make [this](https://gitgud.io/Ed86/rjw/-/blob/master/1.4/Source/Common/Helpers/Gender_Helper.cs#L316) not warn, to reduce errors towards users \ No newline at end of file