diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f25417..ab1db00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -96,7 +96,6 @@ but they are meant mostly to have infectors immune against their own diseases. - Fixed an Issue where pawns would always get the Pheromone social boost, unless they had the pheromone (#113) - Fixed two hidden dependencies on Ideology and Royalty (#115) -- Fixed some more hidden dependencies on Ideology Icons (#118) **Internal:** @@ -106,8 +105,6 @@ but they are meant mostly to have infectors immune against their own diseases. **Notes:** -*One Time Error Load* - The changes to the cum-gene will give a 1-time warning on loading the save. The warning looks like this: ``` Could not find class RJW_Genes.Gene_MuchCum while resolving node li. Trying to use Verse.Gene instead. Full node:
  • rjw_genes_much_cumThing_Human697null82
  • @@ -118,12 +115,6 @@ Verse.Log:Error (string) This is not dangerous. -*Supporting* - -You can now support me with [buying me a coffee](https://buymeacoffee.com/vegapnk). -The mod will remain free, open source and I will not hide or lock any features. -Its just meant if you want to drop me a tip. - # 2.1.0 (27-06-2024) **Additions**: diff --git a/Common/Defs/GeneDefs/GeneDefs_Breeding.xml b/Common/Defs/GeneDefs/GeneDefs_Breeding.xml index 33a8078..463046f 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Breeding.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Breeding.xml @@ -42,8 +42,8 @@ rjw_genes_fertile_anus - Xenotypes with this gene have a functional uterus if they do not possess one by means of their vagina. - For males, it is connected to the anal cavity and leads to a normal pregnancy. + Xenotypes with this gene have a functional uterus connected to the anal cavity even + for males Genes/Icons/Fertile_anus 54 diff --git a/Common/Defs/GeneDefs/GeneDefs_Damage.xml b/Common/Defs/GeneDefs/GeneDefs_Damage.xml index 2e7f941..d045a68 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Damage.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Damage.xml @@ -7,7 +7,7 @@ rjw_genes_damage This Gene makes the Carrier unable to get mood or social penalties from being raped and they cannot be broken for a long period of time. - Genes/Icons/TrialDefend + UI/Icons/Rituals/TrialDefend 2 -1 1 diff --git a/Common/Defs/GeneDefs/GeneDefs_Diseases.xml b/Common/Defs/GeneDefs/GeneDefs_Diseases.xml index 167fd0b..b9c1a45 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Diseases.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Diseases.xml @@ -23,7 +23,7 @@ imply negative side-effects. 1 -1 - Genes/Icons/TrialDefend + UI/Icons/Rituals/TrialDefend
  • diff --git a/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml b/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml index 5ff7ec6..1c37ba3 100644 --- a/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml +++ b/Common/Defs/GeneDefs/GeneDefs_Reproduction.xml @@ -52,6 +52,31 @@ + + rjw_genes_masochist @@ -81,7 +106,7 @@ Reproduction This Gene makes you gay. - Genes/Icons/RoundC + UI\Ideoligions\Universal\RoundC 0 3 @@ -109,7 +134,7 @@ Reproduction Carriers of this Gene are Bisexual. - Genes/Icons/RoundC + UI\Ideoligions\Universal\RoundC 0 4 diff --git a/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml b/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml index 001b765..0fe012a 100644 --- a/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml +++ b/Common/Defs/GeneDefs/GeneDefs_SexSpecial.xml @@ -19,7 +19,7 @@ partially filled) 1 -2 - Genes/Icons/FleshPurity + UI/Memes/FleshPurity 1 @@ -30,7 +30,7 @@ (Partner stays adult) 2 -2 - Genes/Icons/FireLeaves + UI/Ideoligions/FireLeaves 2
  • @@ -180,59 +180,4 @@ - - rjw_genes_feminizer - - Carriers with this gene slowly turn male sexual partners into females. - UI/Icons/Genes/Gene_PsychicBonding - 31 - 5 - -1 - -
  • - -
  • rjw_genes_feminizer
  • - - -
  • - rjw_genes_feminization_progress - true - 0.01 - 1.00 - false - true - false -
  • -
    - - - - - rjw_genes_twinkifier - - Carriers with this gene slowly turn male sexual partners into breedabel cute twinks. - UI/Icons/Genes/Gene_PsychicBonding - 50 - 4 - 0 - -
  • - -
  • rjw_genes_twinkifier
  • - - -
  • - rjw_genes_twinkification_progress - true - 0.99 - 1.00 - false - true - false -
  • -
    -
    - - - \ No newline at end of file diff --git a/Common/Defs/HediffDefs/Hediffs_InfectiveGenderChanges.xml b/Common/Defs/HediffDefs/Hediffs_InfectiveGenderChanges.xml deleted file mode 100644 index 3dce4c0..0000000 --- a/Common/Defs/HediffDefs/Hediffs_InfectiveGenderChanges.xml +++ /dev/null @@ -1,147 +0,0 @@ - - - - - rjw_genes_feminization_progress - HediffWithComps - - Something is changing this pawn - there is a chance to develop female features - upon sex. - false - 1.0 - false - false - -
  • - -0.01 -
  • -
    - - -
  • - - false -
  • - -
  • - - 0.6 - true - -
  • - Consciousness - -0.5 -
  • - - - 0.25 - - - -
  • - - 0.8 - -
  • - Consciousness - -0.05 -
  • - - true - - 0.5 - 0.25 - - - -
  • - - 0.9 - -
  • - Consciousness - -0.1 -
  • - - true - - 1.0 - 0.5 - - -
    -
    - - - - rjw_genes_twinkification_progress - HediffWithComps - - Something is changing this pawn - there is a chance to turn into a cute, - breedable twink upon sex. - false - 1.0 - false - false - -
  • - -0.01 -
  • -
    - - -
  • - - false -
  • - -
  • - - 0.6 - true - -
  • - Consciousness - -0.5 -
  • - - - 0.25 - - - -
  • - - 0.8 - -
  • - Consciousness - -0.05 -
  • - - true - - 0.5 - 0.25 - - - -
  • - - 0.9 - -
  • - Consciousness - -0.1 -
  • - - true - - 1.5 - 0.5 - - -
    -
    - -
    \ No newline at end of file diff --git a/Common/Defs/TipSetDefs/Tips.xml b/Common/Defs/TipSetDefs/Tips.xml index bc7aca3..7147147 100644 --- a/Common/Defs/TipSetDefs/Tips.xml +++ b/Common/Defs/TipSetDefs/Tips.xml @@ -23,8 +23,6 @@
  • The Settings for Animal-Gene Inheritance are distributed between RJW-Pregnancy-Settings and their own Mod-Options.
  • -
  • Children born by pawns with the `Fertile Anus` gene might be bullied at school, but they can still live a fulfilling and happy life.
  • - diff --git a/Common/Textures/Genes/Icons/FireLeaves.png b/Common/Textures/Genes/Icons/FireLeaves.png deleted file mode 100644 index 4f1b247..0000000 Binary files a/Common/Textures/Genes/Icons/FireLeaves.png and /dev/null differ diff --git a/Common/Textures/Genes/Icons/FleshPurity.png b/Common/Textures/Genes/Icons/FleshPurity.png deleted file mode 100644 index 0843812..0000000 Binary files a/Common/Textures/Genes/Icons/FleshPurity.png and /dev/null differ diff --git a/Common/Textures/Genes/Icons/RoundC.png b/Common/Textures/Genes/Icons/RoundC.png deleted file mode 100644 index e2288f5..0000000 Binary files a/Common/Textures/Genes/Icons/RoundC.png and /dev/null differ diff --git a/Common/Textures/Genes/Icons/TrialDefend.png b/Common/Textures/Genes/Icons/TrialDefend.png deleted file mode 100644 index 1275bf2..0000000 Binary files a/Common/Textures/Genes/Icons/TrialDefend.png and /dev/null differ diff --git a/README.md b/README.md index b9e5d14..a09fef6 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,5 @@ # RJW-Genes [NSFW] -[![BuyMeACoffee](https://raw.githubusercontent.com/pachadotdev/buymeacoffee-badges/main/bmc-white.svg)](https://buymeacoffee.com/vegapnk) -[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) - This mod adds genes related and based on RJW to Rimworld. ## Current Features diff --git a/Source/Common/Defs/HediffIncreaseOnSexExtension.cs b/Source/Common/Defs/HediffIncreaseOnSexExtension.cs deleted file mode 100644 index c5f648f..0000000 --- a/Source/Common/Defs/HediffIncreaseOnSexExtension.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; - -namespace RJW_Genes -{ - public class HediffIncreaseOnSexExtension: DefModExtension - { - public HediffDef hediffDef; - public float severityIncrease; - public float applicationChance; - - public bool canCreateHediff; - - public bool applicableForWomen; - public bool applicableForMen; - public bool requiresPenetrativeSex; - } - -} diff --git a/Source/Common/patches/Patch_HediffIncreaseOnSex.cs b/Source/Common/patches/Patch_HediffIncreaseOnSex.cs deleted file mode 100644 index 55e85a3..0000000 --- a/Source/Common/patches/Patch_HediffIncreaseOnSex.cs +++ /dev/null @@ -1,80 +0,0 @@ -using HarmonyLib; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; - -namespace RJW_Genes -{ - - /// - /// This patch "only" applies the hediff increase on sex. - /// It checks for the hediff, creates it if necessary and applicable, - /// and increases it based on the severity, chance and genders specified in the Extension. - /// - /// Some hediffs want follow up logic, e.g. the Feminization Gene, - /// which is handled in an extra patch (that requires the hediff to be present already). - /// - [HarmonyPatch(typeof(SexUtility), "Aftersex")] - public class Patch_HediffIncreaseOnSex - { - - public static void Postfix(SexProps props) - { - if (props == null || props.pawn == null || props.partner == null || props.partner.IsAnimal() || props.pawn.IsAnimal()) - { - return; - } - - Pawn pawn = props.pawn; - Pawn partner = props.partner; - - if (pawn.genes == null || partner.genes == null) return; - - TryApplyHediffsOfSex(pawn, partner, props); - TryApplyHediffsOfSex(partner, pawn, props); - } - - /// - /// Checks for every gene in a pawn if it applies a hediff or the severity of an existing hediff in a sexual partner. - /// If the checks pass, the hediff is added or changed accordingly. - /// - /// Pawn that holds (one or many) genes that might apply a hediff change - /// Pawn that will receive or alter any hediffs, if applicable - /// The Sexprops, used for checking if sex is penetrative - static void TryApplyHediffsOfSex(Pawn pawn, Pawn partner, SexProps props) - { - var random = new Random(); - - foreach (Gene gene in pawn.genes.GenesListForReading) - { - HediffIncreaseOnSexExtension ext = gene.def.GetModExtension(); - if (ext == null) continue; - - if (DiseaseHelper.IsImmuneAgainstGeneticDisease(partner, gene.def)) continue; - if (ext.requiresPenetrativeSex && DiseaseHelper.IsPenetrativeSex(props)) continue; - if (!ext.applicableForMen && partner.gender == Gender.Male) continue; - if (!ext.applicableForWomen && partner.gender == Gender.Female) continue; - if (random.NextDouble() >= ext.applicationChance) continue; - - Hediff hediff = partner.health.hediffSet.GetFirstHediffOfDef(ext.hediffDef); - if (hediff == null) - { - if (!ext.canCreateHediff) continue; - hediff = partner.health.GetOrAddHediff(ext.hediffDef); - hediff.Severity = 0.01f; - ModLog.Debug($"{partner} got hediff {hediff.def.defName} from Patch_HediffIncreaseOnSex ({gene.def.defName}) upon sex with {pawn}"); - } - float initial_severity = hediff.Severity; - ModLog.Debug($"{partner}s hediff {hediff.def.defName} was changed by Patch_HediffIncreaseOnSex ({gene.def.defName}) upon sex with {pawn} [from {initial_severity} to {initial_severity + ext.severityIncrease}]"); - hediff.Severity += ext.severityIncrease; - - // DevNote: I also want to have "negative" hediff changes here, but I think its not necessary. Once the severity reaches 0, or below, the hediff should remove itself. - } - } - - } -} diff --git a/Source/GeneDefOf.cs b/Source/GeneDefOf.cs index 64b84f6..f4a2d08 100644 --- a/Source/GeneDefOf.cs +++ b/Source/GeneDefOf.cs @@ -108,8 +108,6 @@ namespace RJW_Genes public static readonly GeneDef rjw_genes_sexual_genetic_swap; public static readonly GeneDef rjw_genes_sexual_genetic_thief; public static readonly GeneDef rjw_genes_pregnancy_overwrite; - public static readonly GeneDef rjw_genes_feminizer; - public static readonly GeneDef rjw_genes_twinkifier; // Cosmetic public static readonly GeneDef rjw_genes_succubus_tail; @@ -133,12 +131,6 @@ namespace RJW_Genes public static readonly GeneDef rjw_genes_major_vulnerability; public static readonly GeneDef rjw_genes_fluctual_sexual_needs; public static readonly GeneDef rjw_genes_size_blinded; - public static readonly GeneDef rjw_genes_infectious_low_fertility; - public static readonly GeneDef rjw_genes_infectious_increased_sex_need; - public static readonly GeneDef rjw_genes_infectious_bisexuality; - public static readonly GeneDef rjw_genes_infectious_homosexuality; - public static readonly GeneDef rjw_genes_infectious_hypersexuality; - public static readonly GeneDef rjw_genes_stretcher; //Other Defs public static readonly XenotypeDef rjw_genes_succubus; diff --git a/Source/Genes/Special/Patches/Patch_Twinkifier.cs b/Source/Genes/Special/Patches/Patch_Twinkifier.cs deleted file mode 100644 index 53c9d46..0000000 --- a/Source/Genes/Special/Patches/Patch_Twinkifier.cs +++ /dev/null @@ -1,78 +0,0 @@ -using HarmonyLib; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Verse; - -namespace RJW_Genes -{ - /// - /// This patch handles the changes produced by `rjw_genes_twinkifier`. - /// It requires the hediff `rjw_genes_twinkification_in_progress` which is managed separately, in `Patch_HediffIncreaseOnSex`. - /// - [HarmonyPatch(typeof(SexUtility), "Aftersex")] - public static class Patch_Twinkifier - { - const float MINOR_APPLICATION_CHANCE = 0.25f; // = 25% to have a minor transformation - const float MAJOR_APPLICATION_CHANCE = 0.10f; // = 10% to have a major transformation - - public static void Postfix(SexProps props) - { - if (props == null || props.pawn == null || !props.hasPartner() || props.partner == null) - return; - if (props.pawn.IsAnimal() || props.partner.IsAnimal()) - return; - - ApplyTwinkification(props.pawn); - ApplyTwinkification(props.partner); - } - - private static void ApplyTwinkification(Pawn pawn) - { - if (pawn == null) return; - Hediff hediff = pawn.health.hediffSet.GetFirstHediffOfDef(HediffDefOf.rjw_genes_twinkification_progress); - if (hediff == null) return; - - var Random = new Random(); - switch (hediff.SeverityLabel) - { - case "severe": - case "critical": - { - if (Random.NextDouble() < MAJOR_APPLICATION_CHANCE) - majorChange(pawn); - } break; - case "minor": - { - if (Random.NextDouble() < MINOR_APPLICATION_CHANCE) - minorChange(pawn); - } break; - } - - } - - private static void minorChange(Pawn pawn) - { - // Minor Infectious Vulnerability - // Smaller Genitalia - // Remove Beard - // Thin Body Type - } - - private static void majorChange(Pawn pawn) - { - // Final Gene-Pool should have: - // - Fragile (?) - // - Infectious Vulnerability - // - Infectious Homosexuality - // - Beauty - // - Fertile Anus - - pawn.genes.AddGene(GeneDefOf.rjw_genes_fertile_anus, !RJW_Genes_Settings.rjw_genes_genetic_disease_as_endogenes); - pawn.genes.AddGene(GeneDefOf.rjw_genes_infectious_homosexuality, !RJW_Genes_Settings.rjw_genes_genetic_disease_as_endogenes); - } - } -} diff --git a/Source/HediffDefOf.cs b/Source/HediffDefOf.cs index 4214041..d957096 100644 --- a/Source/HediffDefOf.cs +++ b/Source/HediffDefOf.cs @@ -20,10 +20,6 @@ namespace RJW_Genes public static readonly HediffDef rjw_genes_orgasmic_mytosis_hediff; public static readonly HediffDef rjw_genes_mytosis_shock_hediff; - public static readonly HediffDef rjw_genes_twinkification_progress; - public static readonly HediffDef rjw_genes_feminization_progress; - - // Note: Counter does meant it counters it, not it's counting [MayRequire("LustLicentia.RJWLabs")] public static readonly HediffDef rjw_genes_cumstuffed_counter; [MayRequire("LustLicentia.RJWLabs")] public static readonly HediffDef rjw_genes_cumflation_counter; diff --git a/Source/Rjw-Genes.csproj b/Source/Rjw-Genes.csproj index 8300996..dabb692 100644 --- a/Source/Rjw-Genes.csproj +++ b/Source/Rjw-Genes.csproj @@ -58,7 +58,6 @@ - @@ -69,7 +68,6 @@ - @@ -197,7 +195,6 @@ -