diff --git a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs
index 52a7970..62d33c3 100644
--- a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs
+++ b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs
@@ -59,9 +59,9 @@ namespace RJWSexperience.Ideology.Patches
if (props.hasPartner())
{
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))
- AfterSexHuman(props.partner, props.pawn, false);
+ AfterSexHuman(props.partner, props.pawn);
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(partner, human);
@@ -99,11 +99,6 @@ namespace RJWSexperience.Ideology.Patches
{
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)
diff --git a/RJWSexperience/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs b/RJWSexperience/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs
index 05f6e53..beb7905 100644
--- a/RJWSexperience/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs
+++ b/RJWSexperience/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs
@@ -1,15 +1,12 @@
using RimWorld;
-using Verse;
namespace RJWSexperience.Ideology
{
-
[DefOf]
public static class RsiHistoryEventDefOf
{
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithAnimal;
[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_NonIncestuosSex;
[MayRequireIdeology] public static readonly HistoryEventDef RSI_SexWithCorpse;
diff --git a/RJWSexperience/IdeologyAddon/Ideology/TwoPawnFilter.cs b/RJWSexperience/IdeologyAddon/Ideology/TwoPawnFilter.cs
index 438254e..7c49f92 100644
--- a/RJWSexperience/IdeologyAddon/Ideology/TwoPawnFilter.cs
+++ b/RJWSexperience/IdeologyAddon/Ideology/TwoPawnFilter.cs
@@ -18,7 +18,7 @@ namespace RJWSexperience.Ideology
if (doer?.Applies(pawn) == false)
return false;
- if (this.partner?.Applies(pawn) == false)
+ if (this.partner?.Applies(partner) == false)
return false;
if (relations?.Applies(pawn, partner) == false)
diff --git a/RJWSexperience_Ideology/Patches/InteractionDef/Rape.xml b/RJWSexperience_Ideology/Patches/InteractionDef/Rape.xml
new file mode 100644
index 0000000..34bc418
--- /dev/null
+++ b/RJWSexperience_Ideology/Patches/InteractionDef/Rape.xml
@@ -0,0 +1,83 @@
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Vaginal"]
+
+
+
+ RSI_VaginalSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Anal" or defName="Rape_Rimming"]
+
+
+
+ RSI_AnalSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Beakjob" or defName="Rape_Cunnilingus" or defName="Rape_Fellatio" or defName="Rape_Oral"]
+
+
+
+ RSI_OralSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Breastjob" or defName="Rape_Fingering" or defName="Rape_Footjob" or defName="Rape_Handjob"]
+
+
+
+ RSI_MiscSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_DoublePenetration" or defName="Rape_DoublePenetrationM" or defName="Rape_Fisting" or defName="Rape_Scissoring"]
+
+
+
+ RSI_PromiscuousSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
\ No newline at end of file
diff --git a/RJWSexperience_Ideology/Patches/InteractionDef/Rape_Reverse.xml b/RJWSexperience_Ideology/Patches/InteractionDef/Rape_Reverse.xml
new file mode 100644
index 0000000..2f3a047
--- /dev/null
+++ b/RJWSexperience_Ideology/Patches/InteractionDef/Rape_Reverse.xml
@@ -0,0 +1,83 @@
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Reverse_Vaginal"]
+
+
+
+ RSI_VaginalSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Reverse_Anal" or defName="Rape_Reverse_Rimming"]
+
+
+
+ RSI_AnalSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Reverse_Beakjob" or defName="Rape_Reverse_Cunnilingus" or defName="Rape_Reverse_Fellatio"]
+
+
+
+ RSI_OralSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Reverse_Breastjob" or defName="Rape_Reverse_Fingering" or defName="Rape_Reverse_Footjob" or defName="Rape_Reverse_Handjob"]
+
+
+
+ RSI_MiscSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
+
+ /Defs/InteractionDef[defName="Rape_Reverse_DoublePenetration" or defName="Rape_Reverse_DoublePenetrationM" or defName="Rape_Reverse_Fisting" or defName="Rape_Reverse_Scissoring"]
+
+
+
+ RSI_PromiscuousSex
+ RSI_Raped
+
+
+
+ RSI_WasRaped
+
+
+
+
+
\ No newline at end of file