diff --git a/1.4/Assemblies/RJWSexperience.Ideology.dll b/1.4/Assemblies/RJWSexperience.Ideology.dll index ef41f6f..f170f55 100644 Binary files a/1.4/Assemblies/RJWSexperience.Ideology.dll and b/1.4/Assemblies/RJWSexperience.Ideology.dll differ diff --git a/About/Manifest.xml b/About/Manifest.xml index 275894d..7ad9026 100644 --- a/About/Manifest.xml +++ b/About/Manifest.xml @@ -1,7 +1,7 @@ RJWSexperienceIdeology - 1.0.1.1 + 1.0.1.0
  • RimJobWorld >= 5.3.0
  • diff --git a/CHANGELOG.md b/CHANGELOG.md index 8accfad..ded613d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,3 @@ -## Version 1.0.1.1 -* Fixed Ideology overwriting Sexperience's mod settings label -* Fixed submissive gender can't be marked for comfort -* Fixed new precepts adding thoughts to children -* Fixed Sexual Proselyzing precept -* Fixed biotech pregnancy not counting for pregnancy precepts ## Version 1.0.1.0 * Rimworld 1.4 ### by Twonki diff --git a/Languages/ChineseSimplified/Keyed/RJW_Sexperience.xml b/Languages/ChineseSimplified/Keyed/RJW_Sexperience.xml index 1317511..ec040f3 100644 --- a/Languages/ChineseSimplified/Keyed/RJW_Sexperience.xml +++ b/Languages/ChineseSimplified/Keyed/RJW_Sexperience.xml @@ -1,6 +1,6 @@  - RJW 性经验 + RJW 性经验 迷因 diff --git a/Languages/English/Keyed/RJW_Sexperience.xml b/Languages/English/Keyed/RJW_Sexperience.xml index 9550b00..2c60bf5 100644 --- a/Languages/English/Keyed/RJW_Sexperience.xml +++ b/Languages/English/Keyed/RJW_Sexperience.xml @@ -1,6 +1,6 @@  - RJW Sexperience Ideology + RJW Sexperience Ideology Meme slave, prisoner, submissive gender only diff --git a/Languages/Korean/Keyed/RJW_Sexperience.xml b/Languages/Korean/Keyed/RJW_Sexperience.xml index 2fd3e7e..d6487e2 100644 --- a/Languages/Korean/Keyed/RJW_Sexperience.xml +++ b/Languages/Korean/Keyed/RJW_Sexperience.xml @@ -1,6 +1,6 @@  - RJW Sexperience Ideology + RJW Sexperience Ideology 문화 요소 노예, 죄수, 순종적인 성별만 가능합니다. diff --git a/Languages/Russian/Keyed/RJW_Sexperience.xml b/Languages/Russian/Keyed/RJW_Sexperience.xml index 4ca3ad9..35a38ca 100644 --- a/Languages/Russian/Keyed/RJW_Sexperience.xml +++ b/Languages/Russian/Keyed/RJW_Sexperience.xml @@ -1,6 +1,6 @@  - RJW Sexperience + RJW Sexperience Принцип идеологии раб, заключенный, подчиненный только по полу diff --git a/Source/IdeologyAddon/IdeoUtility.cs b/Source/IdeologyAddon/IdeoUtility.cs index d37d4dc..d02dda3 100644 --- a/Source/IdeologyAddon/IdeoUtility.cs +++ b/Source/IdeologyAddon/IdeoUtility.cs @@ -80,18 +80,5 @@ namespace RJWSexperience.Ideology return bestSeenSize; } - - public static bool IsVisiblyPregnant(Pawn pawn) - { - Hediff pregnancy = PregnancyHelper.GetPregnancy(pawn); - - // Currently RJW does not check Biotech pregnancy - if (pregnancy == null && VariousDefOf.PregnantHuman != null) - { - pregnancy = pawn.health.hediffSet.GetFirstHediffOfDef(HediffDefOf.PregnantHuman); - } - - return pregnancy?.Visible == true; - } } } diff --git a/Source/IdeologyAddon/IdeologyAddon.csproj b/Source/IdeologyAddon/IdeologyAddon.csproj index 605d066..5f5e896 100644 --- a/Source/IdeologyAddon/IdeologyAddon.csproj +++ b/Source/IdeologyAddon/IdeologyAddon.csproj @@ -32,7 +32,7 @@ - ..\..\..\rjw\1.4\Assemblies\RJW.dll + ..\..\..\rjw\1.3\Assemblies\RJW.dll False @@ -94,7 +94,7 @@ - 1.4.3530 + 1.4.3524 2.2.2 diff --git a/Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs b/Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs index 1734583..a375f0c 100644 --- a/Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs +++ b/Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs @@ -156,11 +156,10 @@ namespace RJWSexperience.Ideology.Patches } } - [HarmonyPatch(typeof(PawnDesignations_Comfort))] - public static class RJW_Patch_PawnDesignations_Comfort_Submissive + [HarmonyPatch(typeof(PawnDesignations_Comfort), nameof(PawnDesignations_Comfort.UpdateCanDesignateComfort))] + public static class RJW_PatchUpdateCanDesignateComfort { - [HarmonyPostfix, HarmonyPatch(nameof(PawnDesignations_Comfort.UpdateCanDesignateComfort))] - public static void UpdateCanDesignateComfort(Pawn pawn, ref bool __result) + public static void Postfix(Pawn pawn, ref bool __result) { if (pawn.IsSubmissive()) { @@ -168,25 +167,6 @@ namespace RJWSexperience.Ideology.Patches __result = true; } } - - /// - /// RJW undesignates if it thinks that the pawn can't be a comfort pawn. - /// Why the hell checker method changes the state? - /// - /// Pawn to check - /// Is pawn currenlty designated as comfort - /// Run the original method - [HarmonyPrefix, HarmonyPatch(nameof(PawnDesignations_Comfort.IsDesignatedComfort))] - public static bool IsDesignatedComfort(Pawn pawn, ref bool __result) - { - if (pawn.IsSubmissive() && !pawn.Dead) - { - __result = pawn.GetRJWPawnData().Comfort; - return false; - } - - return true; - } } [HarmonyPatch(typeof(Hediff_BasePregnancy), nameof(Hediff_BasePregnancy.PostBirth))] @@ -238,7 +218,7 @@ namespace RJWSexperience.Ideology.Patches public static void Postfix(SexProps props) { // ShortCuts: Exit Early if Pawn or Partner are null (can happen with Animals or Masturbation) - if (props.pawn == null || !props.hasPartner()) + if (props.pawn != null && props.hasPartner()) return; if (props.partner.Ideo?.HasPrecept(VariousDefOf.ProselyzingByOrgasm) == true) diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs index f1483d0..b99f610 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs @@ -22,7 +22,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers protected override ThoughtState ShouldHaveThought(Pawn p) { - if (p?.DevelopmentalStage == DevelopmentalStage.Adult && Genital_Helper.get_AllPartsHediffList(p).Count > 0) + if (p != null && Genital_Helper.get_AllPartsHediffList(p).Count > 0) { float bestSize = IdeoUtility.GetGenitalSize(p); return ThoughtState.ActiveAtStage(StageFromValue.GetStageIndex(bestSize)); diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs index b4b2426..1780e2d 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs @@ -23,9 +23,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers // Important Note: For the Social Worker, we measure otherPawns genitalia protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) { - if (otherPawn?.DevelopmentalStage == DevelopmentalStage.Adult && - p?.DevelopmentalStage == DevelopmentalStage.Adult && - Genital_Helper.get_AllPartsHediffList(otherPawn).Count > 0) + if (otherPawn != null && Genital_Helper.get_AllPartsHediffList(otherPawn).Count > 0) { float bestSize = IdeoUtility.GetGenitalSize(otherPawn); return ThoughtState.ActiveAtStage(StageFromValue.GetStageIndex(bestSize)); diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs index 124c0bf..3631cdf 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs @@ -1,4 +1,5 @@ using RimWorld; +using rjw; using Verse; namespace RJWSexperience.Ideology.PreceptWorkers @@ -14,7 +15,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers /// protected override ThoughtState ShouldHaveThought(Pawn p) { - return p?.DevelopmentalStage == DevelopmentalStage.Adult && !IdeoUtility.IsVisiblyPregnant(p); + return PregnancyHelper.GetPregnancy(p)?.Visible != true; } } } diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs index 465c4ce..d12f74a 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs @@ -1,4 +1,5 @@ using RimWorld; +using rjw; using Verse; namespace RJWSexperience.Ideology.PreceptWorkers @@ -15,9 +16,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers /// protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) { - return otherPawn?.DevelopmentalStage == DevelopmentalStage.Adult && - p?.DevelopmentalStage == DevelopmentalStage.Adult && - !IdeoUtility.IsVisiblyPregnant(otherPawn); + return PregnancyHelper.GetPregnancy(otherPawn)?.Visible != true; } } } diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs index bc980c1..ae3d917 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs @@ -1,4 +1,5 @@ using RimWorld; +using rjw; using Verse; namespace RJWSexperience.Ideology.PreceptWorkers @@ -14,7 +15,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers /// protected override ThoughtState ShouldHaveThought(Pawn p) { - return p?.DevelopmentalStage == DevelopmentalStage.Adult && IdeoUtility.IsVisiblyPregnant(p); + return PregnancyHelper.GetPregnancy(p)?.Visible == true; } } } diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs index 3a57bc2..c54b814 100644 --- a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs @@ -1,4 +1,5 @@ using RimWorld; +using rjw; using Verse; namespace RJWSexperience.Ideology.PreceptWorkers @@ -15,9 +16,7 @@ namespace RJWSexperience.Ideology.PreceptWorkers /// protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) { - return otherPawn?.DevelopmentalStage == DevelopmentalStage.Adult && - p?.DevelopmentalStage == DevelopmentalStage.Adult && - IdeoUtility.IsVisiblyPregnant(otherPawn); + return PregnancyHelper.GetPregnancy(otherPawn)?.Visible == true; } } } diff --git a/Source/IdeologyAddon/VariousDefOf.cs b/Source/IdeologyAddon/VariousDefOf.cs index fb926ce..52d2180 100644 --- a/Source/IdeologyAddon/VariousDefOf.cs +++ b/Source/IdeologyAddon/VariousDefOf.cs @@ -22,6 +22,5 @@ namespace RJWSexperience.Ideology [MayRequireIdeology] public static readonly PreceptDef Submissive_Male; [MayRequireIdeology] public static readonly PreceptDef Submissive_Female; [MayRequireIdeology] public static readonly PreceptDef ProselyzingByOrgasm; - [MayRequireBiotech] public static readonly HediffDef PregnantHuman; } }