From 59ef82b764903cef7ac019a103ede94670953db1 Mon Sep 17 00:00:00 2001 From: amevarashi Date: Mon, 20 Jun 2022 23:25:21 +0500 Subject: [PATCH] Include Hawkeye32's Bond Only precept. For now as-is --- .../Ideology/Patches/RJW_Patch_Ideo.cs | 16 +- RJWSexperience/IdeologyAddon/VariousDefOf.cs | 2 + .../Defs/MemeDefs/Memes_Sexual.xml | 1 + .../Defs/PreceptDefs/Precepts_Bestiality.xml | 158 ++++++++++++++++++ .../Patches/RJW_ThoughtDefs.xml | 6 + 5 files changed, 181 insertions(+), 2 deletions(-) diff --git a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs index 5364321..92bc1dd 100644 --- a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs +++ b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs @@ -90,8 +90,10 @@ namespace RJWSexperience.Ideology.Patches if (partner != null) { - if (xxx.is_human(pawn)) AfterSexHuman(pawn, partner, props.isRape, props.sexType); - else if (xxx.is_human(partner)) AfterSexHuman(partner, pawn, false, props.sexType, true); + if (xxx.is_human(pawn)) + AfterSexHuman(pawn, partner, props.isRape, props.sexType); + else if (xxx.is_human(partner)) + AfterSexHuman(partner, pawn, false, props.sexType, true); } } @@ -114,11 +116,21 @@ namespace RJWSexperience.Ideology.Patches if (human.IsSlave) RapeEffectSlave(human); if (human.Ideo?.IsVeneratedAnimal(partner) ?? false) Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithVeneratedAnimal.TaggedEvent(human, tag + HETag.BeenRaped + HETag.Gender(human), partner)); else Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithAnimal.TaggedEvent(human, tag + HETag.BeenRaped + HETag.Gender(human), partner)); + + if (human.Ideo != null && human.relations?.DirectRelationExists(PawnRelationDefOf.Bond, partner) == true) + Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithBondedAnimal.TaggedEvent(human, tag + HETag.BeenRaped + HETag.Gender(human), partner)); + else + Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithNonBondAnimal.TaggedEvent(human, tag + HETag.BeenRaped + HETag.Gender(human), partner)); } else { if (human.Ideo?.IsVeneratedAnimal(partner) ?? false) Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithVeneratedAnimal.TaggedEvent(human, tag + HETag.Gender(human), partner)); else Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithAnimal.TaggedEvent(human, tag + HETag.Gender(human), partner)); + + if (human.Ideo != null && human.relations?.DirectRelationExists(PawnRelationDefOf.Bond, partner) == true) + Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithBondedAnimal.TaggedEvent(human, tag + HETag.Gender(human), partner)); + else + Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithNonBondAnimal.TaggedEvent(human, tag + HETag.Gender(human), partner)); } } else if (xxx.is_human(partner)) diff --git a/RJWSexperience/IdeologyAddon/VariousDefOf.cs b/RJWSexperience/IdeologyAddon/VariousDefOf.cs index 9c9f242..01fa262 100644 --- a/RJWSexperience/IdeologyAddon/VariousDefOf.cs +++ b/RJWSexperience/IdeologyAddon/VariousDefOf.cs @@ -17,6 +17,8 @@ namespace RJWSexperience.Ideology [MayRequireIdeology] public static readonly MemeDef Necrophile = DefDatabase.GetNamed("Necrophile"); [MayRequireIdeology] public static readonly HistoryEventDef SexWithAnimal = DefDatabase.GetNamed("SexWithAnimal"); [MayRequireIdeology] public static readonly HistoryEventDef SexWithVeneratedAnimal = DefDatabase.GetNamed("SexWithVeneratedAnimal"); + [MayRequireIdeology] public static readonly HistoryEventDef SexWithBondedAnimal = DefDatabase.GetNamed("SexWithBondedAnimal"); + [MayRequireIdeology] public static readonly HistoryEventDef SexWithNonBondAnimal = DefDatabase.GetNamed("SexWithNonBondAnimal"); [MayRequireIdeology] public static readonly HistoryEventDef Raped = DefDatabase.GetNamed("Raped"); [MayRequireIdeology] public static readonly HistoryEventDef RapedSlave = DefDatabase.GetNamed("RapedSlave"); [MayRequireIdeology] public static readonly HistoryEventDef RapedPrisoner = DefDatabase.GetNamed("RapedPrisoner"); diff --git a/RJWSexperience_Ideology/Defs/MemeDefs/Memes_Sexual.xml b/RJWSexperience_Ideology/Defs/MemeDefs/Memes_Sexual.xml index 847adcc..44f828c 100644 --- a/RJWSexperience_Ideology/Defs/MemeDefs/Memes_Sexual.xml +++ b/RJWSexperience_Ideology/Defs/MemeDefs/Memes_Sexual.xml @@ -26,6 +26,7 @@
  • Bestiality_Acceptable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • diff --git a/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml b/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml index d153169..5cda634 100644 --- a/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml +++ b/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml @@ -18,6 +18,16 @@
    + + SexWithBondedAnimal + + + + + SexWithNonBondAnimal + + + @@ -258,6 +268,74 @@ + + + Bestiality_BondOnly + Bestiality + + Sex with Bonded animals should be honored and respected. But having sex with other animals will be denounced. + High + 0 + 1000 + +
  • HumanPrimacy
  • +
    + +
  • Zoophile
  • +
    + +
  • + SexWithNonBondAnimal + Bestiality_NonBonded_Disapproved + true +
  • +
  • + SexWithNonBondAnimal + Bestiality_NonBonded_Know_Disapproved + Someone sex with any animal + true +
  • +
  • + SexWithBondedAnimal + Bestiality_Bond_Approved + true +
  • +
  • + SexWithBondedAnimal + Bestiality_Bond_Approved_Know + Someone sex with non bonded animal + true +
  • +
    + +
  • + +
  • + + true + +
  • Bond
  • + + + 2.0 + +
  • + + true + +
  • Bond
  • + + + 0.1 + + + +
  • + 0.5 +
  • +
    +
    + Bestiality_Honorable Bestiality @@ -326,6 +404,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -349,6 +428,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -369,6 +449,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -392,6 +473,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -412,6 +494,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -435,6 +518,7 @@
  • Bestiality_Honorable
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Acceptable
  • @@ -480,6 +564,80 @@ + + Bestiality_NonBonded_Disapproved + 6 + 1 + +
  • Bestiality_Honorable
  • +
  • Bestiality_Acceptable
  • +
  • Bestiality_OnlyVenerated
  • +
    + +
  • + + I had sex with a non bonded animal. How could I? + -5 +
  • +
    +
    + + + Bestiality_Bond_Approved + 6 + 1 + +
  • Bestiality_Abhorrent
  • +
  • Bestiality_Horrible
  • +
  • Bestiality_Disapproved
  • +
    + +
  • + + I went wild with my bonded animal! + 8 +
  • +
    +
    + + + Bestiality_Bond_Approved_Know + Thought_MemorySocial + 15 + 2 + +
  • Bestiality_Abhorrent
  • +
  • Bestiality_Horrible
  • +
  • Bestiality_Disapproved
  • +
    + +
  • + + Shares a special bond. + 5 +
  • +
    +
    + + + Bestiality_NonBonded_Know_Disapproved + Thought_MemorySocial + 15 + 100 + 3 + +
  • Bestiality_Honorable
  • +
  • Bestiality_Acceptable
  • +
  • Bestiality_OnlyVenerated
  • +
    + +
  • + + -10 +
  • +
    +
    + Bestiality_Honorable 6 diff --git a/RJWSexperience_Ideology/Patches/RJW_ThoughtDefs.xml b/RJWSexperience_Ideology/Patches/RJW_ThoughtDefs.xml index e52f0c9..e2e3f6e 100644 --- a/RJWSexperience_Ideology/Patches/RJW_ThoughtDefs.xml +++ b/RJWSexperience_Ideology/Patches/RJW_ThoughtDefs.xml @@ -6,6 +6,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • @@ -16,6 +17,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • @@ -26,6 +28,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • @@ -36,6 +39,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • @@ -46,6 +50,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable
  • @@ -56,6 +61,7 @@
  • Bestiality_OnlyVenerated
  • +
  • Bestiality_BondOnly
  • Bestiality_Honorable