mirror of
https://github.com/amevarashi/RJW-Sexperience.git
synced 2024-08-14 23:54:08 +00:00
Move rape events to the new system, add sextype events for doer
This commit is contained in:
parent
111b5b2450
commit
a6098bed72
5 changed files with 170 additions and 12 deletions
|
@ -59,9 +59,9 @@ namespace RJWSexperience.Ideology.Patches
|
||||||
if (props.hasPartner())
|
if (props.hasPartner())
|
||||||
{
|
{
|
||||||
if (xxx.is_human(props.pawn))
|
if (xxx.is_human(props.pawn))
|
||||||
AfterSexHuman(props.pawn, props.partner, props.isRape);
|
AfterSexHuman(props.pawn, props.partner);
|
||||||
else if (xxx.is_human(props.partner))
|
else if (xxx.is_human(props.partner))
|
||||||
AfterSexHuman(props.partner, props.pawn, false);
|
AfterSexHuman(props.partner, props.pawn);
|
||||||
|
|
||||||
if (xxx.is_human(props.partner) && props.isRape)
|
if (xxx.is_human(props.partner) && props.isRape)
|
||||||
{
|
{
|
||||||
|
@ -90,7 +90,7 @@ namespace RJWSexperience.Ideology.Patches
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void AfterSexHuman(Pawn human, Pawn partner, bool rape)
|
public static void AfterSexHuman(Pawn human, Pawn partner)
|
||||||
{
|
{
|
||||||
RsiHistoryEventDefOf.RSI_NonIncestuosSex.RecordEventWithPartner(human, partner);
|
RsiHistoryEventDefOf.RSI_NonIncestuosSex.RecordEventWithPartner(human, partner);
|
||||||
RsiHistoryEventDefOf.RSI_NonIncestuosSex.RecordEventWithPartner(partner, human);
|
RsiHistoryEventDefOf.RSI_NonIncestuosSex.RecordEventWithPartner(partner, human);
|
||||||
|
@ -99,11 +99,6 @@ namespace RJWSexperience.Ideology.Patches
|
||||||
{
|
{
|
||||||
RsiHistoryEventDefOf.RSI_SexWithAnimal.RecordEventWithPartner(human, partner);
|
RsiHistoryEventDefOf.RSI_SexWithAnimal.RecordEventWithPartner(human, partner);
|
||||||
}
|
}
|
||||||
else if (xxx.is_human(partner) && rape)
|
|
||||||
{
|
|
||||||
RsiHistoryEventDefOf.RSI_Raped.RecordEventWithPartner(human, partner);
|
|
||||||
RsiHistoryEventDefOf.RSI_WasRaped.RecordEventWithPartner(partner, human);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void RapeEffectSlave(Pawn victim)
|
public static void RapeEffectSlave(Pawn victim)
|
||||||
|
|
|
@ -1,15 +1,12 @@
|
||||||
using RimWorld;
|
using RimWorld;
|
||||||
using Verse;
|
|
||||||
|
|
||||||
namespace RJWSexperience.Ideology
|
namespace RJWSexperience.Ideology
|
||||||
{
|
{
|
||||||
|
|
||||||
[DefOf]
|
[DefOf]
|
||||||
public static class RsiHistoryEventDefOf
|
public static class RsiHistoryEventDefOf
|
||||||
{
|
{
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithAnimal;
|
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithAnimal;
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_Raped;
|
[MayRequireIdeology] public static readonly HistoryEventDef RSI_Raped;
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_WasRaped;
|
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_NonIncestuosMarriage;
|
[MayRequireIdeology] public static readonly HistoryEventDef RSI_NonIncestuosMarriage;
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_NonIncestuosSex;
|
[MayRequireIdeology] public static readonly HistoryEventDef RSI_NonIncestuosSex;
|
||||||
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithCorpse;
|
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithCorpse;
|
||||||
|
|
|
@ -18,7 +18,7 @@ namespace RJWSexperience.Ideology
|
||||||
if (doer?.Applies(pawn) == false)
|
if (doer?.Applies(pawn) == false)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (this.partner?.Applies(pawn) == false)
|
if (this.partner?.Applies(partner) == false)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (relations?.Applies(pawn, partner) == false)
|
if (relations?.Applies(pawn, partner) == false)
|
||||||
|
|
83
RJWSexperience_Ideology/Patches/InteractionDef/Rape.xml
Normal file
83
RJWSexperience_Ideology/Patches/InteractionDef/Rape.xml
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<Patch>
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Vaginal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_VaginalSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_VaginalSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Anal" or defName="Rape_Rimming"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_AnalSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_AnalSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Beakjob" or defName="Rape_Cunnilingus" or defName="Rape_Fellatio" or defName="Rape_Oral"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_OralSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_OralSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Breastjob" or defName="Rape_Fingering" or defName="Rape_Footjob" or defName="Rape_Handjob"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_MiscSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_MiscSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_DoublePenetration" or defName="Rape_DoublePenetrationM" or defName="Rape_Fisting" or defName="Rape_Scissoring"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_PromiscuousSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_PromiscuousSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
</Patch>
|
|
@ -0,0 +1,83 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<Patch>
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Reverse_Vaginal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_VaginalSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_VaginalSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Reverse_Anal" or defName="Rape_Reverse_Rimming"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_AnalSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_AnalSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Reverse_Beakjob" or defName="Rape_Reverse_Cunnilingus" or defName="Rape_Reverse_Fellatio"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_OralSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_OralSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Reverse_Breastjob" or defName="Rape_Reverse_Fingering" or defName="Rape_Reverse_Footjob" or defName="Rape_Reverse_Handjob"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_MiscSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_MiscSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAddModExtension">
|
||||||
|
<xpath>/Defs/InteractionDef[defName="Rape_Reverse_DoublePenetration" or defName="Rape_Reverse_DoublePenetrationM" or defName="Rape_Reverse_Fisting" or defName="Rape_Reverse_Scissoring"]</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.Ideology.InteractionDefExtension_HistoryEvents">
|
||||||
|
<pawnEvents>
|
||||||
|
<li>RSI_PromiscuousSex</li>
|
||||||
|
<li>RSI_Raped</li>
|
||||||
|
</pawnEvents>
|
||||||
|
<partnerEvents>
|
||||||
|
<!--<li>RSI_PromiscuousSex</li>-->
|
||||||
|
<li>RSI_WasRaped</li>
|
||||||
|
</partnerEvents>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
</Patch>
|
Loading…
Reference in a new issue