mirror of
https://gitgud.io/c0ffeeeeeeee/coffees-rjw-ideology-addons.git
synced 2024-08-14 23:57:38 +00:00
orgy ritual
This commit is contained in:
parent
edc619a950
commit
379c9a4d7d
13 changed files with 264 additions and 6 deletions
|
@ -0,0 +1,49 @@
|
|||
using HarmonyLib;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Verse;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using System.Reflection.Emit;
|
||||
|
||||
namespace C0ffee_s_RJW_Ideology_Addons
|
||||
{
|
||||
[HarmonyPatch(typeof(CasualSex_Helper), "FindBestPartner")]
|
||||
public static class HarmonyPatch_CasualSex_Helper
|
||||
{
|
||||
|
||||
public static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> codeInstructions)
|
||||
{
|
||||
|
||||
var ins = codeInstructions.ToList();
|
||||
for(int i = 0; i < ins.Count; i++)
|
||||
{
|
||||
|
||||
if(ins[i].OperandIs(AccessTools.DeclaredMethod(typeof(CasualSex_Helper), "HookupAllowedViaSettings")))
|
||||
{
|
||||
|
||||
yield return new CodeInstruction(OpCodes.Call, AccessTools.DeclaredMethod(typeof(HarmonyPatch_CasualSex_Helper), "HookupAllowed"));
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
yield return ins[i];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static bool HookupAllowed(Pawn pawn1, Pawn pawn2)
|
||||
{
|
||||
if(CRIAUtility.TwoPawnsWillingToHaveSex(pawn1, pawn2))
|
||||
{
|
||||
return CasualSex_Helper.HookupAllowedViaSettings(pawn1, pawn2);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
using HarmonyLib;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Verse;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using System.Reflection.Emit;
|
||||
|
||||
namespace C0ffee_s_RJW_Ideology_Addons
|
||||
{
|
||||
[StaticConstructorOnStartup]
|
||||
public static class HarmonyPatch_RMB_Menu
|
||||
{
|
||||
static HarmonyPatch_RMB_Menu()
|
||||
{
|
||||
(new Harmony("C0ffeeRIA")).Patch(AccessTools.Method(AccessTools.TypeByName("rjw.RMB_Menu"), "GenerateSexOptions"),
|
||||
postfix: new HarmonyMethod(AccessTools.Method(typeof(HarmonyPatch_RMB_Menu), "Postfix")));
|
||||
|
||||
|
||||
}
|
||||
|
||||
public static void Postfix(ref List<FloatMenuOption> __result, Pawn pawn, LocalTargetInfo target)
|
||||
{
|
||||
|
||||
if (target.Pawn != null)
|
||||
{
|
||||
|
||||
if (!CRIAUtility.TwoPawnsWillingToHaveSex(pawn, target.Pawn))
|
||||
{
|
||||
for(int i = 0; i < __result.Count; i++)
|
||||
{
|
||||
|
||||
if(__result[i].Label.StartsWith("RJW_RMB_Sex".Translate()))
|
||||
{
|
||||
__result[i].Label += " (sinful)";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue