From 85ed2412175ad3326a9559ffe41fb7f2805932bb Mon Sep 17 00:00:00 2001 From: amevarashi Date: Fri, 8 Jul 2022 19:37:10 +0500 Subject: [PATCH] Move disable Mtb functionality to PreceptComp_UnwillingToDo --- RJWSexperience/IdeologyAddon/Ideology/IdeoUtility.cs | 3 --- .../Ideology/Patches/RJW_Patch_ChancePerHour.cs | 11 +++++++++-- .../Ideology/Precepts/DefExtension_ModifyMtb.cs | 2 -- .../Defs/PreceptDefs/Precepts_Bestiality.xml | 6 +++--- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/RJWSexperience/IdeologyAddon/Ideology/IdeoUtility.cs b/RJWSexperience/IdeologyAddon/Ideology/IdeoUtility.cs index 1ad9001..bb273ef 100644 --- a/RJWSexperience/IdeologyAddon/Ideology/IdeoUtility.cs +++ b/RJWSexperience/IdeologyAddon/Ideology/IdeoUtility.cs @@ -43,9 +43,6 @@ namespace RJWSexperience.Ideology if (defExtension == null) continue; - if (defExtension.disable) - return -1f; - finalMultiplier *= defExtension.multiplier; } return finalMultiplier; diff --git a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs index 1e88613..ade39d5 100644 --- a/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs +++ b/RJWSexperience/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs @@ -11,8 +11,15 @@ namespace RJWSexperience.Ideology.Patches { public static void Postfix(Pawn pawn, ref float __result) { - if (__result > 0f && pawn.Ideo != null) // ideo is null if don't have dlc - __result *= IdeoUtility.GetPreceptsMtbMultiplier(pawn.Ideo); + if (__result < 0f || pawn.Ideo == null) // ideo is null if don't have dlc + return; + + if (!VariousDefOf.RSI_SexWithAnimal.CreateEvent(pawn).DoerWillingToDo()) + { + __result = -2f; + return; + } + __result *= IdeoUtility.GetPreceptsMtbMultiplier(pawn.Ideo); } } diff --git a/RJWSexperience/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs b/RJWSexperience/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs index fb315b4..e1553f3 100644 --- a/RJWSexperience/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs +++ b/RJWSexperience/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs @@ -7,7 +7,5 @@ namespace RJWSexperience.Ideology.Precepts { [SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")] public float multiplier = 1f; - [SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")] - public bool disable = false; } } diff --git a/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml b/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml index 9b4faa9..cc034fc 100644 --- a/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml +++ b/RJWSexperience_Ideology/Defs/PreceptDefs/Precepts_Bestiality.xml @@ -88,6 +88,9 @@
  • HumanPrimacy
  • +
  • + RSI_SexWithAnimal +
  • RSI_SexWithVeneratedAnimal Bestiality_Abhorrent @@ -116,9 +119,6 @@
  • -
  • - true -