diff --git a/CHANGELOG.md b/CHANGELOG.md
index 91b6cd8..5dec301 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,7 +3,7 @@
**Changes:**
- New Gene for Evergrowing Cocks. Be careful.
-- New Gene for Genderfluid Pawns - daily chance to change sex. Futas just change "display" and keep genitalia, other pawns switch genitalia.
+- New Gene for Genderfluid Pawns - daily chance to change sex. Futas just change "display" and keep genitalia, other pawns switch genitalia. XML configurable times & chances.
- New Drawings for the Succubi Wings & Tail, thanks to @Monti (donated via Discord)
- Simple Gene that removes Sex need (called asexual, `rjw_genes_no_sex_need`)
diff --git a/Common/Defs/GeneDefs/GeneDefs_SpecifiedGender.xml b/Common/Defs/GeneDefs/GeneDefs_SpecifiedGender.xml
index 4434560..d7541e7 100644
--- a/Common/Defs/GeneDefs/GeneDefs_SpecifiedGender.xml
+++ b/Common/Defs/GeneDefs/GeneDefs_SpecifiedGender.xml
@@ -57,6 +57,9 @@
RJW_Genes.Gene_GenderFluid
2
+
+ 0.9
+
AG_Gender
Gender
@@ -69,8 +72,8 @@
- 1000
- 1
+ 120000
+ 0.25
diff --git a/Source/Genes/Gender/Gene_GenderFluid.cs b/Source/Genes/Gender/Gene_GenderFluid.cs
index 064a778..ebbfadb 100644
--- a/Source/Genes/Gender/Gene_GenderFluid.cs
+++ b/Source/Genes/Gender/Gene_GenderFluid.cs
@@ -136,6 +136,8 @@ namespace RJW_Genes
}
SwitchBreasts();
+
+ RemoveLicentiaVaginaHediffs();
}
@@ -192,6 +194,33 @@ namespace RJW_Genes
return additional_breasts;
}
+ ///
+ /// Checks the pawn if it has any of the vagina-related hediffs (e.g. stretched) and removes them.
+ /// Anal Soreness, Stretching etc. remains.
+ ///
+ private void RemoveLicentiaVaginaHediffs()
+ {
+ Hediff cumflation = pawn.health.hediffSet.GetFirstHediffOfDef(LicentiaLabs.Licentia.HediffDefs.Cumflation);
+ if (cumflation != null)
+ pawn.health.RemoveHediff(cumflation);
+
+ Hediff stretched = pawn.health.hediffSet.GetFirstHediffOfDef(LicentiaLabs.Licentia.HediffDefs.Stretched);
+ if (stretched != null && stretched.Part != Genital_Helper.get_anusBPR(pawn))
+ pawn.health.RemoveHediff(stretched);
+
+ Hediff torn = pawn.health.hediffSet.GetFirstHediffOfDef(LicentiaLabs.Licentia.HediffDefs.StretchTear);
+ if (torn != null && torn.Part != Genital_Helper.get_anusBPR(pawn))
+ pawn.health.RemoveHediff(torn);
+
+ Hediff prolapsed = pawn.health.hediffSet.GetFirstHediffOfDef(LicentiaLabs.Licentia.HediffDefs.Prolapse);
+ if (prolapsed != null && prolapsed.Part != Genital_Helper.get_anusBPR(pawn))
+ pawn.health.RemoveHediff(prolapsed);
+
+ Hediff extremeProlapsed = pawn.health.hediffSet.GetFirstHediffOfDef(LicentiaLabs.Licentia.HediffDefs.ExtremeProlapse);
+ if (extremeProlapsed != null && extremeProlapsed.Part != Genital_Helper.get_anusBPR(pawn))
+ pawn.health.RemoveHediff(extremeProlapsed);
+ }
+
///
/// There are some actions that block sex change,
/// being drafted or having sex.