Added a Gene for Specified Sex using RJW Logic

This commit is contained in:
Vegapnk 2022-11-20 17:33:50 +01:00
parent bf4303177e
commit 95fc9b89a0
42 changed files with 318 additions and 186 deletions

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_CanineGenitalia : Gene
public class Gene_CanineGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.canine_penis,Genital_Helper.canine_vagina,Genital_Helper.generic_anus);
}

View file

@ -4,13 +4,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_DemonicGenitalia : Gene
public class Gene_DemonicGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.demon_penis,Genital_Helper.demon_vagina,Genital_Helper.demon_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_DragonGenitalia : Gene
public class Gene_DragonGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.dragon_penis,Genital_Helper.dragon_vagina,Genital_Helper.generic_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_EquineGenitalia : Gene
public class Gene_EquineGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.equine_penis,Genital_Helper.equine_vagina,Genital_Helper.generic_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_FelineGenitalia : Gene
public class Gene_FelineGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.feline_penis,Genital_Helper.feline_vagina,Genital_Helper.generic_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_HumanGenitalia : Gene
public class Gene_HumanGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.average_penis,Genital_Helper.average_vagina,Genital_Helper.average_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_OvipositorGenitalia : Gene
public class Gene_OvipositorGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.ovipositorM,Genital_Helper.ovipositorF,Genital_Helper.insect_anus);
}

View file

@ -3,13 +3,11 @@ using rjw;
namespace RJW_Genes
{
public class Gene_SlimeGenitalia : Gene
public class Gene_SlimeGenitalia : RJW_Gene
{
public override void PostMake()
{
base.PostMake();
if (GenitaliaUtility.PawnStillNeedsGenitalia(pawn))
Sexualizer.sexualize_pawn(pawn);
GenitaliaChanger.ChangeGenitalia(this.pawn,Genital_Helper.slime_penis,Genital_Helper.slime_vagina,Genital_Helper.slime_anus);
}

View file

@ -79,5 +79,14 @@ namespace RJW_Genes
return candidate.def.defName.ToLower().Contains("bionic") || candidate.def.defName.ToLower().Contains("archo");
}
public static void RemoveAllGenitalia(Pawn pawn)
{
var parts = Genital_Helper.get_AllPartsHediffList(pawn);
foreach (var part in parts)
{
pawn.health.RemoveHediff(part);
}
}
}
}