mirror of
https://github.com/amevarashi/RJW-Sexperience.git
synced 2024-08-14 23:54:08 +00:00
Fix cum eating for futas
This commit is contained in:
parent
54a778b146
commit
ffa00b7464
1 changed files with 32 additions and 19 deletions
|
@ -5,6 +5,7 @@ using System.Text;
|
|||
using System.Threading.Tasks;
|
||||
using HarmonyLib;
|
||||
using rjw;
|
||||
using rjw.Modules.Interactions.Enums;
|
||||
using RimWorld;
|
||||
using Verse;
|
||||
using Verse.AI;
|
||||
|
@ -100,30 +101,42 @@ namespace RJWSexperience
|
|||
{
|
||||
public static void Postfix(SexProps props)
|
||||
{
|
||||
Pawn pawn = props.pawn;
|
||||
Pawn partner = props.partner;
|
||||
xxx.rjwSextype sextype = props.sexType;
|
||||
Pawn giver = null;
|
||||
Pawn receiver = null;
|
||||
|
||||
if (Genital_Helper.has_penis_fertile(pawn))
|
||||
{
|
||||
giver = pawn;
|
||||
receiver = partner;
|
||||
}
|
||||
else if (Genital_Helper.has_penis_fertile(partner))
|
||||
{
|
||||
giver = partner;
|
||||
receiver = pawn;
|
||||
TryFeedCum(props);
|
||||
}
|
||||
|
||||
if (receiver != null && (
|
||||
sextype == xxx.rjwSextype.Oral ||
|
||||
sextype == xxx.rjwSextype.Fellatio ||
|
||||
sextype == xxx.rjwSextype.Sixtynine))
|
||||
private static void TryFeedCum(SexProps props)
|
||||
{
|
||||
receiver.AteCum(giver.GetCumVolume(), true);
|
||||
if (!Genital_Helper.has_penis_fertile(props.pawn))
|
||||
return;
|
||||
|
||||
if (!PawnsPenisIsInPartnersMouth(props))
|
||||
return;
|
||||
|
||||
props.partner.AteCum(props.pawn.GetCumVolume(), true);
|
||||
}
|
||||
|
||||
private static bool PawnsPenisIsInPartnersMouth(SexProps props)
|
||||
{
|
||||
var interaction = rjw.Modules.Interactions.Helpers.InteractionHelper.GetWithExtension(props.dictionaryKey);
|
||||
|
||||
if (props.pawn == props.interactionInitiator)
|
||||
{
|
||||
if (!interaction.DominantHasTag(GenitalTag.CanPenetrate) && !interaction.DominantHasFamily(GenitalFamily.Penis))
|
||||
return false;
|
||||
var requirement = interaction.SelectorExtension.submissiveRequirement;
|
||||
if (!requirement.mouth && !requirement.beak && !requirement.mouthORbeak)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!interaction.SubmissiveHasTag(GenitalTag.CanPenetrate) && !interaction.SubmissiveHasFamily(GenitalFamily.Penis))
|
||||
return false;
|
||||
var requirement = interaction.SelectorExtension.dominantRequirement;
|
||||
if (!requirement.mouth && !requirement.beak && !requirement.mouthORbeak)
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue