Merged Anal and Vaginal Absorber, added a lot of icons

This commit is contained in:
Vegapnk 2023-02-21 07:46:55 +01:00
parent 6acef842c0
commit 8d38fd00c6
17 changed files with 25 additions and 51 deletions

View File

@ -4,7 +4,7 @@
<defName>rjw_genes_naked_prowess</defName> <defName>rjw_genes_naked_prowess</defName>
<label>naked prowess</label> <label>naked prowess</label>
<description>Enhance the strength and resilience of your naked body with fertilin.</description> <description>Enhance the strength and resilience of your naked body with fertilin.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/rjw_naked_prowess</iconPath>
<warmupMoteSocialSymbol>Things/Mote/Heart</warmupMoteSocialSymbol> <warmupMoteSocialSymbol>Things/Mote/Heart</warmupMoteSocialSymbol>
<jobDef>CastAbilityOnThing</jobDef> <jobDef>CastAbilityOnThing</jobDef>
<targetRequired>False</targetRequired> <targetRequired>False</targetRequired>

View File

@ -4,7 +4,7 @@
<defName>rjw_genes_seduce</defName> <defName>rjw_genes_seduce</defName>
<label>seduce</label> <label>seduce</label>
<description>Seduce the target to approach the caster.</description> <description>Seduce the target to approach the caster.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/seduce</iconPath>
<writeCombatLog>True</writeCombatLog> <writeCombatLog>True</writeCombatLog>
<stunTargetWhileCasting>true</stunTargetWhileCasting> <stunTargetWhileCasting>true</stunTargetWhileCasting>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted> <displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>

View File

@ -15,7 +15,7 @@
<showGizmoOnWorldView>true</showGizmoOnWorldView> <showGizmoOnWorldView>true</showGizmoOnWorldView>
<showGizmoWhenDrafted>true</showGizmoWhenDrafted> <showGizmoWhenDrafted>true</showGizmoWhenDrafted>
<resourceDescription>A reserve of biological strength which can be gained and spent in a variety of ways. \n\nFertilin can be increased by absorbing cum, typically through oral sex or stored cum. \n\nIf fertilin reaches zero, {PAWN_nameDef} will become very unhappy and may try to obtain some forcefully.</resourceDescription> <resourceDescription>A reserve of biological strength which can be gained and spent in a variety of ways. \n\nFertilin can be increased by absorbing cum, typically through oral sex or stored cum. \n\nIf fertilin reaches zero, {PAWN_nameDef} will become very unhappy and may try to obtain some forcefully.</resourceDescription>
<iconPath>UI/Icons/Genes/Gene_Hemogenic</iconPath> <iconPath>Genes/Icons/FertilinAlt</iconPath>
<selectionWeight>0</selectionWeight> <selectionWeight>0</selectionWeight>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
<displayOrderInCategory>-2</displayOrderInCategory> <displayOrderInCategory>-2</displayOrderInCategory>
@ -39,7 +39,7 @@
<description>Carriers lose an additional 15 fertilin per day from biological entropy.</description> <description>Carriers lose an additional 15 fertilin per day from biological entropy.</description>
<resourceLabel>fertilin</resourceLabel> <resourceLabel>fertilin</resourceLabel>
<geneClass>RJW_Genes.Gene_LifeForceDrain</geneClass> <geneClass>RJW_Genes.Gene_LifeForceDrain</geneClass>
<iconPath>UI/Icons/Genes/Gene_HemogenDrain</iconPath> <iconPath>Genes/Icons/FertilinDrainAlt</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<resourceLossPerDay>0.15</resourceLossPerDay> <resourceLossPerDay>0.15</resourceLossPerDay>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -53,7 +53,7 @@
<label>Pussy Healer</label> <label>Pussy Healer</label>
<labelShortAdj>pussyhealer</labelShortAdj> <labelShortAdj>pussyhealer</labelShortAdj>
<description>Carriers of this gene are able use vaginal sex to tend to other's wounds.</description> <description>Carriers of this gene are able use vaginal sex to tend to other's wounds.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/Healpussy</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>9</displayOrderInCategory> <displayOrderInCategory>9</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -79,7 +79,7 @@
<label>Cockeater</label> <label>Cockeater</label>
<labelShortAdj>cockeater</labelShortAdj> <labelShortAdj>cockeater</labelShortAdj>
<description>Carriers of this gene are able eat cocks to restore their fertilin supply. Cocks are consumed during that process.</description> <description>Carriers of this gene are able eat cocks to restore their fertilin supply. Cocks are consumed during that process.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/cockeater</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>11</displayOrderInCategory> <displayOrderInCategory>11</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -130,7 +130,7 @@
<label>seduction</label> <label>seduction</label>
<labelShortAdj>seduction</labelShortAdj> <labelShortAdj>seduction</labelShortAdj>
<description>Carriers of this gene are able to seduce a pawn into having sex with them.</description> <description>Carriers of this gene are able to seduce a pawn into having sex with them.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/seduce</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>13</displayOrderInCategory> <displayOrderInCategory>13</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -155,7 +155,7 @@
<defName>rjw_genes_naked_prowess</defName> <defName>rjw_genes_naked_prowess</defName>
<label>naked prowess</label> <label>naked prowess</label>
<description>Carriers of this gene are able to temporarily increase their strength and resilience, while they are naked.</description> <description>Carriers of this gene are able to temporarily increase their strength and resilience, while they are naked.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/rjw_naked_prowess</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>13</displayOrderInCategory> <displayOrderInCategory>13</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -173,7 +173,7 @@
<defName>rjw_genes_cum_eater</defName> <defName>rjw_genes_cum_eater</defName>
<label>Cum eater</label> <label>Cum eater</label>
<description>Carriers of this gene are able to absorb fertilin through eating cum. This includes oral sex, eating cum for food or sucking out cumflated pawns. </description> <description>Carriers of this gene are able to absorb fertilin through eating cum. This includes oral sex, eating cum for food or sucking out cumflated pawns. </description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/cumeater</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>1</displayOrderInCategory> <displayOrderInCategory>1</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
@ -181,27 +181,16 @@
</GeneDef> </GeneDef>
<GeneDef> <GeneDef>
<defName>rjw_genes_vaginal_absorber</defName> <defName>rjw_genes_fertilin_absorber</defName>
<label>Vaginal Fertilin Absorber</label> <label>Fertilin Absorber</label>
<description>Carriers of this gene are able to absorb the fertilin inside sperm through their vagina.</description> <description>Carriers of this gene are able to absorb the fertilin inside sperm through their vagina and anus.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Genes/Icons/Vaginal_cum_absorption</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite> <prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>2</displayOrderInCategory> <displayOrderInCategory>2</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory> <displayCategory>rjw_genes_fertilin</displayCategory>
<biostatCpx>1</biostatCpx> <biostatCpx>1</biostatCpx>
</GeneDef> </GeneDef>
<GeneDef>
<defName>rjw_genes_anal_absorber</defName>
<label>Anal Fertilin Absorber</label>
<description>Carriers of this gene are able to absorb the fertilin inside sperm through their anus.</description>
<iconPath>Things/Mote/Heart</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>3</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory>
<biostatCpx>1</biostatCpx>
</GeneDef>
<GeneDef> <GeneDef>
<defName>rjw_genes_drainer</defName> <defName>rjw_genes_drainer</defName>
<label>vitality drainer</label> <label>vitality drainer</label>

View File

@ -31,8 +31,7 @@
<li>rjw_genes_demonic_genitalia</li> <li>rjw_genes_demonic_genitalia</li>
<li>rjw_genes_cum_eater</li> <li>rjw_genes_cum_eater</li>
<li>rjw_genes_vaginal_absorber</li> <li>rjw_genes_fertilin_absorber</li>
<li>rjw_genes_anal_absorber</li>
<li>rjw_genes_paralysingkiss</li> <li>rjw_genes_paralysingkiss</li>
<li>rjw_genes_seduce</li> <li>rjw_genes_seduce</li>
@ -89,7 +88,7 @@
<li>UVSensitivity_Intense</li> <li>UVSensitivity_Intense</li>
<li>AptitudeStrong_Intellectual</li> <li>AptitudeStrong_Intellectual</li>
<li>Ears_Pointed</li> <li>Ears_Pointed</li>
<li>Headbone_MiniHorns</li> <li>Headbone_CenterHorn</li>
<li>Skin_InkBlack</li> <li>Skin_InkBlack</li>
</genes> </genes>
</XenotypeDef> </XenotypeDef>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -82,8 +82,7 @@ namespace RJW_Genes
public static readonly GeneDef rjw_genes_pussyhealing; public static readonly GeneDef rjw_genes_pussyhealing;
public static readonly GeneDef rjw_genes_lifeforce_drain; public static readonly GeneDef rjw_genes_lifeforce_drain;
public static readonly GeneDef rjw_genes_cum_eater; public static readonly GeneDef rjw_genes_cum_eater;
public static readonly GeneDef rjw_genes_vaginal_absorber; public static readonly GeneDef rjw_genes_fertilin_absorber;
public static readonly GeneDef rjw_genes_anal_absorber;
public static readonly GeneDef rjw_genes_drainer; public static readonly GeneDef rjw_genes_drainer;
public static readonly GeneDef rjw_genes_seduce; public static readonly GeneDef rjw_genes_seduce;
public static readonly GeneDef rjw_genes_paralysingkiss; public static readonly GeneDef rjw_genes_paralysingkiss;

View File

@ -47,7 +47,7 @@ namespace RJW_Genes
if (cachedLifeForceGene.Resource.Value <= cachedLifeForceGene.Resource.MinLevelForAlert && this.Pawn.IsHashIntervalTick(2500) && Rand.Chance(0.03f)) //~50% chance each day for mental break if (cachedLifeForceGene.Resource.Value <= cachedLifeForceGene.Resource.MinLevelForAlert && this.Pawn.IsHashIntervalTick(2500) && Rand.Chance(0.03f)) //~50% chance each day for mental break
{ {
if (this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_cum_eater) if (this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_cum_eater)
|| this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_vaginal_absorber) || this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_anal_absorber) || this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_drainer)) || this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_fertilin_absorber) || this.Pawn.genes.HasGene(GeneDefOf.rjw_genes_drainer))
{ {
//TODO: use mentalstatedef instead of mentalbreakdef //TODO: use mentalstatedef instead of mentalbreakdef
MentalBreakDef randomrape = GeneDefOf.rjw_genes_lifeforce_randomrape; MentalBreakDef randomrape = GeneDefOf.rjw_genes_lifeforce_randomrape;

View File

@ -180,24 +180,17 @@ namespace RJW_Genes
{ {
absorb_factor += 1f; absorb_factor += 1f;
} }
else if (props.sexType == xxx.rjwSextype.Vaginal && GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_vaginal_absorber)) else if (props.sexType == xxx.rjwSextype.Vaginal && GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_fertilin_absorber))
{ {
absorb_factor += 1f; absorb_factor += 1f;
} }
else if (props.sexType == xxx.rjwSextype.Anal && GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_anal_absorber)) else if (props.sexType == xxx.rjwSextype.Anal && GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_fertilin_absorber))
{ {
absorb_factor += 1f; absorb_factor += 1f;
} }
else if (props.sexType == xxx.rjwSextype.DoublePenetration) else if (props.sexType == xxx.rjwSextype.DoublePenetration && GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_fertilin_absorber))
{ {
if (GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_vaginal_absorber)) absorb_factor += 1f;
{
absorb_factor += 0.5f;
}
if (GeneUtility.HasGeneNullCheck(PawnWithLifeForce, GeneDefOf.rjw_genes_anal_absorber))
{
absorb_factor += 0.5f;
}
} }
else if (props.sexType == xxx.rjwSextype.Scissoring || props.sexType == xxx.rjwSextype.Cunnilingus) else if (props.sexType == xxx.rjwSextype.Scissoring || props.sexType == xxx.rjwSextype.Cunnilingus)
{ {

View File

@ -58,8 +58,7 @@ namespace RJW_Genes
private static List<GeneDef> FertilinSourceGenes = new List<GeneDef>() { private static List<GeneDef> FertilinSourceGenes = new List<GeneDef>() {
GeneDefOf.rjw_genes_drainer, GeneDefOf.rjw_genes_drainer,
GeneDefOf.rjw_genes_cum_eater, GeneDefOf.rjw_genes_cum_eater,
GeneDefOf.rjw_genes_vaginal_absorber, GeneDefOf.rjw_genes_fertilin_absorber,
GeneDefOf.rjw_genes_anal_absorber,
GeneDefOf.rjw_genes_cockeater GeneDefOf.rjw_genes_cockeater
}; };

View File

@ -35,12 +35,9 @@ namespace RJW_Genes.Interactions
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Beak); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Beak);
} }
if (pawn.genes.HasGene(GeneDefOf.rjw_genes_vaginal_absorber)) if (pawn.genes.HasGene(GeneDefOf.rjw_genes_fertilin_absorber))
{ {
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Vagina); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Vagina);
}
if (pawn.genes.HasGene(GeneDefOf.rjw_genes_anal_absorber))
{
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Anus); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Anus);
} }
} }
@ -64,12 +61,10 @@ namespace RJW_Genes.Interactions
} }
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Mouth); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Mouth);
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Beak); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Beak);
if (pawn.genes.HasGene(GeneDefOf.rjw_genes_vaginal_absorber))
if (pawn.genes.HasGene(GeneDefOf.rjw_genes_fertilin_absorber))
{ {
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Vagina); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Vagina);
}
if (pawn.genes.HasGene(GeneDefOf.rjw_genes_anal_absorber))
{
yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Anus); yield return new Weighted<LewdablePartKind>(weight, LewdablePartKind.Anus);
} }
} }