diff --git a/1.3/Defs/PreceptDefs/Precepts_Pregnancy.xml b/1.3/Defs/PreceptDefs/Precepts_Pregnancy.xml index 4b1e67a..7e5b69f 100644 --- a/1.3/Defs/PreceptDefs/Precepts_Pregnancy.xml +++ b/1.3/Defs/PreceptDefs/Precepts_Pregnancy.xml @@ -86,7 +86,7 @@ Low 50 - Being Pregnant is unclean. Take care and stay pure. + Being Pregnant is unclean. Take care and stay pure.
  • Pregnancy_Horrible_Pregnant @@ -94,7 +94,6 @@
  • Pregnancy_Horrible_Pregnant_Social
  • - @@ -102,7 +101,7 @@ Pregnancy_Respected_Pregnant - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant Thought_Situational
  • @@ -115,7 +114,7 @@ Pregnancy_Elevated_Pregnant - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant Thought_Situational
  • @@ -128,7 +127,7 @@ Pregnancy_Respected_Pregnant_Social - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant_Social Thought_SituationalSocial
  • @@ -140,7 +139,7 @@ Pregnancy_Elevated_Pregnant_Social - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant_Social Thought_SituationalSocial
  • @@ -152,7 +151,7 @@ Pregnancy_Horrible_Pregnant_Social - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant_Social Thought_SituationalSocial
  • @@ -164,7 +163,7 @@ Pregnancy_Horrible_Pregnant - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_Pregnant + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_Pregnant Thought_Situational
  • @@ -178,9 +177,10 @@ Pregnancy_Horrible_NonPregnant - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_NonPregnant_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_NonPregnant Thought_Situational true + Female
  • @@ -192,8 +192,9 @@ Pregnancy_Horrible_NonPregnant_Social - RJWSexperience.Ideology.Ideology.Precept_Workers.ThoughtWorker_Precept_NonPregnant_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_NonPregnant_Social Thought_SituationalSocial + Female
  • @@ -202,4 +203,4 @@ - + \ No newline at end of file diff --git a/1.3/Defs/PreceptDefs/Precepts_Sex.xml b/1.3/Defs/PreceptDefs/Precepts_Sex.xml index ea37742..8cf05e4 100644 --- a/1.3/Defs/PreceptDefs/Precepts_Sex.xml +++ b/1.3/Defs/PreceptDefs/Precepts_Sex.xml @@ -288,7 +288,7 @@ Sex_Promiscuous 1 1 - RJWSexperience.Thought_IncreaseRecord + RJWSexperience.Ideology.Thought_IncreaseRecord
  • @@ -297,7 +297,7 @@
  • -
  • +
  • Lust 3.0
  • diff --git a/1.3/Defs/PreceptDefs/Precepts_SizeMatters.xml b/1.3/Defs/PreceptDefs/Precepts_SizeMatters.xml index b9bc867..c060ec4 100644 --- a/1.3/Defs/PreceptDefs/Precepts_SizeMatters.xml +++ b/1.3/Defs/PreceptDefs/Precepts_SizeMatters.xml @@ -63,7 +63,7 @@ GenitalSize_Approved Thought_Situational - RJWSexperience.Ideology.ThoughtWorker_Precept_GenitalSize_Approved + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_GenitalSize
  • @@ -91,11 +91,24 @@ +10
  • + +
  • + + +
  • 0
  • +
  • 0.2
  • +
  • 0.4
  • +
  • 0.6
  • +
  • 0.8
  • + + +
    GenitalSize_Disapproved - RJWSexperience.Ideology.ThoughtWorker_Precept_GenitalSize_Disapproved + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_GenitalSize Thought_Situational
  • @@ -124,13 +137,26 @@ -10
  • + +
  • + + +
  • 0
  • +
  • 0.2
  • +
  • 0.4
  • +
  • 0.6
  • +
  • 0.8
  • + + +
    GenitalSize_Approved_Social - RJWSexperience.Ideology.ThoughtWorker_Precept_GenitalSize_Approved_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_GenitalSize_Social Thought_SituationalSocial
  • @@ -146,27 +172,48 @@ +5
  • + +
  • + + +
  • 0
  • +
  • 0.4
  • +
  • 0.6
  • + + +
    - GenitalSize_Disapproved_Social - RJWSexperience.Ideology.ThoughtWorker_Precept_GenitalSize_Disapproved_Social + RJWSexperience.Ideology.PreceptWorkers.ThoughtWorker_Precept_GenitalSize_Social Thought_SituationalSocial
  • - - -5 + + +5
  • 0
  • - - +5 + + -5
  • + +
  • + + +
  • 0
  • +
  • 0.4
  • +
  • 0.6
  • + + +
    \ No newline at end of file diff --git a/1.3/Defs/PreceptDefs/Precepts_Submissive.xml b/1.3/Defs/PreceptDefs/Precepts_Submissive.xml index a7c8bbf..e69c135 100644 --- a/1.3/Defs/PreceptDefs/Precepts_Submissive.xml +++ b/1.3/Defs/PreceptDefs/Precepts_Submissive.xml @@ -194,9 +194,6 @@ 15 100 3 - -
  • Masochist
  • -
  • diff --git a/1.3/Defs/PreceptDefs/Precepts_Virginity.xml b/1.3/Defs/PreceptDefs/Precepts_Virginity.xml index 50baa70..a7a231a 100644 --- a/1.3/Defs/PreceptDefs/Precepts_Virginity.xml +++ b/1.3/Defs/PreceptDefs/Precepts_Virginity.xml @@ -270,7 +270,7 @@ Virgin_Precious_Taken - RJWSexperience.Thought_Opinionbased + RJWSexperience.Ideology.Thought_Opinionbased 7 1 @@ -296,7 +296,7 @@
  • -
  • +
  • -100
  • -50
  • @@ -309,7 +309,7 @@ Virgin_Shameful_Taken - RJWSexperience.Thought_Opinionbased + RJWSexperience.Ideology.Thought_Opinionbased 7 1 @@ -330,7 +330,7 @@ -
  • +
  • -100
  • 0
  • diff --git a/Source/IdeologyAddon/Ideology/GoodwillSituationWorker_MemeCompatibility.cs b/Source/IdeologyAddon/GoodwillSituationWorker_MemeCompatibility.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/GoodwillSituationWorker_MemeCompatibility.cs rename to Source/IdeologyAddon/GoodwillSituationWorker_MemeCompatibility.cs diff --git a/Source/IdeologyAddon/Ideology/HistoryEvents/ArgsNamesCustom.cs b/Source/IdeologyAddon/HistoryEvents/ArgsNamesCustom.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/HistoryEvents/ArgsNamesCustom.cs rename to Source/IdeologyAddon/HistoryEvents/ArgsNamesCustom.cs diff --git a/Source/IdeologyAddon/Ideology/HistoryEvents/DefExtension_EventOverrides.cs b/Source/IdeologyAddon/HistoryEvents/DefExtension_EventOverrides.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/HistoryEvents/DefExtension_EventOverrides.cs rename to Source/IdeologyAddon/HistoryEvents/DefExtension_EventOverrides.cs diff --git a/Source/IdeologyAddon/Ideology/HistoryEvents/DefExtension_SecondaryEvents.cs b/Source/IdeologyAddon/HistoryEvents/DefExtension_SecondaryEvents.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/HistoryEvents/DefExtension_SecondaryEvents.cs rename to Source/IdeologyAddon/HistoryEvents/DefExtension_SecondaryEvents.cs diff --git a/Source/IdeologyAddon/Ideology/HistoryEvents/HistoryEventDefExtensionMethods.cs b/Source/IdeologyAddon/HistoryEvents/HistoryEventDefExtensionMethods.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/HistoryEvents/HistoryEventDefExtensionMethods.cs rename to Source/IdeologyAddon/HistoryEvents/HistoryEventDefExtensionMethods.cs diff --git a/Source/IdeologyAddon/Ideology/HistoryEvents/TwoPawnEventRule.cs b/Source/IdeologyAddon/HistoryEvents/TwoPawnEventRule.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/HistoryEvents/TwoPawnEventRule.cs rename to Source/IdeologyAddon/HistoryEvents/TwoPawnEventRule.cs diff --git a/Source/IdeologyAddon/Ideology/IdeoUtility.cs b/Source/IdeologyAddon/IdeoUtility.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/IdeoUtility.cs rename to Source/IdeologyAddon/IdeoUtility.cs diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved.cs deleted file mode 100644 index 6c5f491..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved.cs +++ /dev/null @@ -1,31 +0,0 @@ -using RimWorld; -using rjw; -using Verse; - -namespace RJWSexperience.Ideology -{ - public class ThoughtWorker_Precept_GenitalSize_Approved : ThoughtWorker_Precept - { - protected override ThoughtState ShouldHaveThought(Pawn p) - { - // We have 5 stages, which map directly to genitalia severity: - // Micro(<0.2), Small(>0.2&&<0.4), Normal(>0.4&&<0.6), Big(>0.6&&<0.8), Huge(>0.8) - if (p != null && Genital_Helper.get_AllPartsHediffList(p).Count > 0) - { - float best_size = IdeoUtility.getGenitalSize(p); - if (best_size < 0.2f) - return ThoughtState.ActiveAtStage(0); - else if (best_size < 0.4f) - return ThoughtState.ActiveAtStage(1); - else if (best_size < 0.6f) - return ThoughtState.ActiveAtStage(2); - else if (best_size < 0.8f) - return ThoughtState.ActiveAtStage(3); - else if (best_size > 0.8f) - return ThoughtState.ActiveAtStage(4); - } - // This might can happen if the pawn has no genitalia ... maybe? - return ThoughtState.Inactive; - } - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved_Social.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved_Social.cs deleted file mode 100644 index 22dadbe..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Approved_Social.cs +++ /dev/null @@ -1,29 +0,0 @@ -using RimWorld; -using rjw; -using Verse; - -namespace RJWSexperience.Ideology -{ - public class ThoughtWorker_Precept_GenitalSize_Approved_Social : ThoughtWorker_Precept_Social - { - - // Important Note: For the Social Worker, we measure otherPawns genitalia - protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) - { - // We have 3 stages, which map directly to genitalia severity: - // Unfavorable(<0.4), Normal(>0.4&&<0.6), Favorable(>0.6) - if (otherPawn != null && Genital_Helper.get_AllPartsHediffList(otherPawn).Count > 0) - { - float best_size = IdeoUtility.getGenitalSize(otherPawn); - if (best_size < 0.4f) - return ThoughtState.ActiveAtStage(0); - else if (best_size < 0.6f) - return ThoughtState.ActiveAtStage(1); - else if (best_size > 0.6f) - return ThoughtState.ActiveAtStage(2); - } - // This might can happen if the pawn has no genitalia ... maybe? - return ThoughtState.Inactive; - } - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved.cs deleted file mode 100644 index 7f7eae2..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved.cs +++ /dev/null @@ -1,32 +0,0 @@ -using RimWorld; -using rjw; -using Verse; - -namespace RJWSexperience.Ideology -{ - public class ThoughtWorker_Precept_GenitalSize_Disapproved : ThoughtWorker_Precept - { - protected override ThoughtState ShouldHaveThought(Pawn p) - { - // We have 5 stages, which map directly to genitalia severity: - // Micro(<0.2), Small(>0.2&&<0.4), Normal(>0.4&&<0.6), Big(>0.6&&<0.8), Huge(>0.8) - if (p != null && Genital_Helper.get_AllPartsHediffList(p).Count > 0) - { - float best_size = IdeoUtility.getGenitalSize(p); - if (best_size < 0.2f) - return ThoughtState.ActiveAtStage(0); - else if (best_size < 0.4f) - return ThoughtState.ActiveAtStage(1); - else if (best_size < 0.6f) - return ThoughtState.ActiveAtStage(2); - else if (best_size < 0.8f) - return ThoughtState.ActiveAtStage(3); - else if (best_size > 0.8f) - return ThoughtState.ActiveAtStage(4); - } - // This might can happen if the pawn has no genitalia ... maybe? - return ThoughtState.Inactive; - } - - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved_Social.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved_Social.cs deleted file mode 100644 index 7df72e4..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Disapproved_Social.cs +++ /dev/null @@ -1,28 +0,0 @@ -using RimWorld; -using rjw; -using Verse; - -namespace RJWSexperience.Ideology -{ - public class ThoughtWorker_Precept_GenitalSize_Disapproved_Social : ThoughtWorker_Precept_Social - { - // Important Note: For the Social Worker, we measure otherPawns genitalia - protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) - { - // We have 3 stages, which map directly to genitalia severity: - // Unfavorable(<0.4), Normal(>0.4&&<0.6), Favorable(>0.6) - if (otherPawn != null && Genital_Helper.get_AllPartsHediffList(otherPawn).Count > 0) - { - float best_size = IdeoUtility.getGenitalSize(otherPawn); - if (best_size < 0.4f) - return ThoughtState.ActiveAtStage(0); - else if (best_size < 0.6f) - return ThoughtState.ActiveAtStage(1); - else if (best_size > 0.6f) - return ThoughtState.ActiveAtStage(2); - } - // This might can happen if the pawn has no genitalia ... maybe? - return ThoughtState.Inactive; - } - } - } diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs deleted file mode 100644 index 118d2bd..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs +++ /dev/null @@ -1,29 +0,0 @@ -using RimWorld; -using Verse; -using rjw; - -namespace RJWSexperience.Ideology.Ideology.Precept_Workers -{ - /// - /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn - /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs - /// - public class ThoughtWorker_Precept_NonPregnant : ThoughtWorker_Precept - { - /// Gets the current thought state of the given pawn. - /// The pawn for whom the thoughts are generated. - /// - protected override ThoughtState ShouldHaveThought(Pawn p) - { - - var pregnancy = rjw.PregnancyHelper.GetPregnancy(p); - - if (pregnancy == null) - { - return ThoughtState.Inactive; - } - - return ThoughtState.ActiveAtStage(0); - } - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs deleted file mode 100644 index 68ed70b..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs +++ /dev/null @@ -1,28 +0,0 @@ -using RimWorld; -using Verse; -using rjw; - -namespace RJWSexperience.Ideology.Ideology.Precept_Workers -{ - /// - /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn - /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs - /// - public class ThoughtWorker_Precept_NonPregnant_Social : ThoughtWorker_Precept - { - /// Gets the current thought state of the given pawn. - /// The pawn for whom the thoughts are generated. - /// - protected override ThoughtState ShouldHaveThought(Pawn p) - { - - var pregnancy = rjw.PregnancyHelper.GetPregnancy(p); - - if (pregnancy != null) - { - return ThoughtState.Inactive; - } else - return ThoughtState.ActiveAtStage(0); - } - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs deleted file mode 100644 index fab5f90..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs +++ /dev/null @@ -1,30 +0,0 @@ - -using RimWorld; -using Verse; -using rjw; - -namespace RJWSexperience.Ideology.Ideology.Precept_Workers -{ - /// - /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn - /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs - /// - public class ThoughtWorker_Precept_Pregnant : ThoughtWorker_Precept - { - /// Gets the current thought state of the given pawn. - /// The pawn for whom the thoughts are generated. - /// - protected override ThoughtState ShouldHaveThought(Pawn p) - { - - var pregnancy = rjw.PregnancyHelper.GetPregnancy(p); - - if (pregnancy == null) - { - return ThoughtState.Inactive; - } - - return ThoughtState.ActiveAtStage(0); - } - } -} diff --git a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs b/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs deleted file mode 100644 index b1cdaa0..0000000 --- a/Source/IdeologyAddon/Ideology/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs +++ /dev/null @@ -1,29 +0,0 @@ -using RimWorld; -using Verse; -using rjw; - -namespace RJWSexperience.Ideology.Ideology.Precept_Workers -{ - /// - /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn - /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs - /// - public class ThoughtWorker_Precept_Pregnant_Social : ThoughtWorker_Precept - { - /// Gets the current thought state of the given pawn. - /// The pawn for whom the thoughts are generated. - /// - protected override ThoughtState ShouldHaveThought(Pawn p) - { - - var pregnancy = rjw.PregnancyHelper.GetPregnancy(p); - - if (pregnancy == null) - { - return ThoughtState.Inactive; - } - - return ThoughtState.ActiveAtStage(0); - } - } -} diff --git a/Source/IdeologyAddon/Ideology/Thought_IncreaseRecord.cs b/Source/IdeologyAddon/Ideology/Thought_IncreaseRecord.cs deleted file mode 100644 index d50eb50..0000000 --- a/Source/IdeologyAddon/Ideology/Thought_IncreaseRecord.cs +++ /dev/null @@ -1,54 +0,0 @@ -using RimWorld; -using Verse; - -namespace RJWSexperience.Ideology -{ - public class Thought_IncreaseRecord : Thought_Recordbased - { - protected float recordIncrement; - - public override void ExposeData() - { - base.ExposeData(); - Scribe_Values.Look(ref recordIncrement, "recordIncrement", recordIncrement, true); - } - - public override void ThoughtInterval() - { - base.ThoughtInterval(); - if (recordIncrement != 0) - { - pawn.records.AddTo(RecordDef, recordIncrement); - recordIncrement = 0; - } - } - - public override bool TryMergeWithExistingMemory(out bool showBubble) - { - ThoughtHandler thoughts = pawn.needs.mood.thoughts; - if (thoughts.memories.NumMemoriesInGroup(this) >= def.stackLimit) - { - Thought_IncreaseRecord thought_Memory = (Thought_IncreaseRecord)thoughts.memories.OldestMemoryInGroup(this); - if (thought_Memory != null) - { - showBubble = (thought_Memory.age > thought_Memory.def.DurationTicks / 2); - thought_Memory.Merged(); - return true; - } - } - showBubble = true; - return false; - } - - public override void Init() - { - base.Init(); - recordIncrement = Def.increment; - } - protected virtual void Merged() - { - age = 0; - recordIncrement += Def.increment; - } - } -} diff --git a/Source/IdeologyAddon/Ideology/Thought_Opinionbased.cs b/Source/IdeologyAddon/Ideology/Thought_Opinionbased.cs deleted file mode 100644 index 16a83b4..0000000 --- a/Source/IdeologyAddon/Ideology/Thought_Opinionbased.cs +++ /dev/null @@ -1,38 +0,0 @@ -using RimWorld; -using System.Collections.Generic; -using System.Diagnostics.CodeAnalysis; - -namespace RJWSexperience.Ideology -{ - /// - /// ThoughtDef using opinion - /// - public class ThoughtDef_Opinionbased : ThoughtDef - { - [SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")] - public List minimumValueforStage = new List(); - } - - /// - /// Thought class using record. - /// - public class Thought_Opinionbased : Thought_Memory - { - protected ThoughtDef_Opinionbased Def => (ThoughtDef_Opinionbased)def; - protected List MinimumValueforStage => Def.minimumValueforStage; - - public override int CurStageIndex - { - get - { - float value = 0f; - if (otherPawn != null) value = pawn.relations?.OpinionOf(otherPawn) ?? 0f; - for (int i = MinimumValueforStage.Count - 1; i > 0; i--) - { - if (MinimumValueforStage[i] < value) return i; - } - return 0; - } - } - } -} diff --git a/Source/IdeologyAddon/IdeologyAddon.csproj b/Source/IdeologyAddon/IdeologyAddon.csproj index 819c938..131a6c5 100644 --- a/Source/IdeologyAddon/IdeologyAddon.csproj +++ b/Source/IdeologyAddon/IdeologyAddon.csproj @@ -32,7 +32,8 @@ - ..\..\..\rjw-vegapnk\1.3\Assemblies\RJW.dll + ..\..\..\rjw\1.3\Assemblies\RJW.dll + False @@ -43,55 +44,53 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - + - + diff --git a/Source/IdeologyAddon/Ideology/InteractionDefExtension_HistoryEvents.cs b/Source/IdeologyAddon/InteractionDefExtension_HistoryEvents.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/InteractionDefExtension_HistoryEvents.cs rename to Source/IdeologyAddon/InteractionDefExtension_HistoryEvents.cs diff --git a/Source/IdeologyAddon/Ideology/Keyed.cs b/Source/IdeologyAddon/Keyed.cs similarity index 93% rename from Source/IdeologyAddon/Ideology/Keyed.cs rename to Source/IdeologyAddon/Keyed.cs index 58c89cf..8a98c01 100644 --- a/Source/IdeologyAddon/Ideology/Keyed.cs +++ b/Source/IdeologyAddon/Keyed.cs @@ -1,6 +1,6 @@ using Verse; -namespace RJWSexperience +namespace RJWSexperience.Ideology { public static class Keyed { diff --git a/Source/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs b/Source/IdeologyAddon/Patches/RJW_Patch_ChancePerHour.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Patches/RJW_Patch_ChancePerHour.cs rename to Source/IdeologyAddon/Patches/RJW_Patch_ChancePerHour.cs diff --git a/Source/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs b/Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Patches/RJW_Patch_Ideo.cs rename to Source/IdeologyAddon/Patches/RJW_Patch_Ideo.cs diff --git a/Source/IdeologyAddon/Ideology/Patches/Rimworld_Patch.cs b/Source/IdeologyAddon/Patches/Rimworld_Patch.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Patches/Rimworld_Patch.cs rename to Source/IdeologyAddon/Patches/Rimworld_Patch.cs diff --git a/Source/IdeologyAddon/Ideology/Patches/Sexperience_Patch.cs b/Source/IdeologyAddon/Patches/Sexperience_Patch.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Patches/Sexperience_Patch.cs rename to Source/IdeologyAddon/Patches/Sexperience_Patch.cs diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs new file mode 100644 index 0000000..0f9b135 --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize.cs @@ -0,0 +1,34 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + public class ThoughtWorker_Precept_GenitalSize : ThoughtWorker_Precept + { + private ThoughtDefExtension_StageFromValue stageFromValue; + + protected ThoughtDefExtension_StageFromValue StageFromValue + { + get + { + if (stageFromValue == null) + { + stageFromValue = def.GetModExtension(); + } + return stageFromValue; + } + } + + protected override ThoughtState ShouldHaveThought(Pawn p) + { + if (p != null && Genital_Helper.get_AllPartsHediffList(p).Count > 0) + { + float bestSize = IdeoUtility.getGenitalSize(p); + return ThoughtState.ActiveAtStage(StageFromValue.GetStageIndex(bestSize)); + } + // This might can happen if the pawn has no genitalia ... maybe? + return ThoughtState.Inactive; + } + } +} diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs new file mode 100644 index 0000000..42c6fc5 --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_GenitalSize_Social.cs @@ -0,0 +1,35 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + public class ThoughtWorker_Precept_GenitalSize_Social : ThoughtWorker_Precept_Social + { + private ThoughtDefExtension_StageFromValue stageFromValue; + + protected ThoughtDefExtension_StageFromValue StageFromValue + { + get + { + if (stageFromValue == null) + { + stageFromValue = def.GetModExtension(); + } + return stageFromValue; + } + } + + // Important Note: For the Social Worker, we measure otherPawns genitalia + protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) + { + if (otherPawn != null && Genital_Helper.get_AllPartsHediffList(otherPawn).Count > 0) + { + float bestSize = IdeoUtility.getGenitalSize(otherPawn); + return ThoughtState.ActiveAtStage(StageFromValue.GetStageIndex(bestSize)); + } + // This might can happen if the pawn has no genitalia ... maybe? + return ThoughtState.Inactive; + } + } +} diff --git a/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs new file mode 100644 index 0000000..3631cdf --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant.cs @@ -0,0 +1,21 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + /// + /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn + /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs + /// + public class ThoughtWorker_Precept_NonPregnant : ThoughtWorker_Precept + { + /// Gets the current thought state of the given pawn. + /// The pawn for whom the thoughts are generated. + /// + protected override ThoughtState ShouldHaveThought(Pawn 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 new file mode 100644 index 0000000..d12f74a --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_NonPregnant_Social.cs @@ -0,0 +1,22 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + /// + /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn + /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs + /// + public class ThoughtWorker_Precept_NonPregnant_Social : ThoughtWorker_Precept_Social + { + /// Gets the current thought state of the given pawn. + /// The pawn for whom the thoughts are generated. + /// The pawn about whom the thoughts are generated. + /// + protected override ThoughtState ShouldHaveThought(Pawn p, Pawn 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 new file mode 100644 index 0000000..ae3d917 --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant.cs @@ -0,0 +1,21 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + /// + /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn + /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs + /// + public class ThoughtWorker_Precept_Pregnant : ThoughtWorker_Precept + { + /// Gets the current thought state of the given pawn. + /// The pawn for whom the thoughts are generated. + /// + protected override ThoughtState ShouldHaveThought(Pawn 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 new file mode 100644 index 0000000..c54b814 --- /dev/null +++ b/Source/IdeologyAddon/PreceptWorkers/ThoughtWorker_Precept_Pregnant_Social.cs @@ -0,0 +1,22 @@ +using RimWorld; +using rjw; +using Verse; + +namespace RJWSexperience.Ideology.PreceptWorkers +{ + /// + /// thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn + /// Shamelessly taken from: https://github.com/Tachyonite/Pawnmorpher/blob/master/Source/Pawnmorphs/Esoteria/Thoughts/ThoughtWorker_EtherHediff.cs + /// + public class ThoughtWorker_Precept_Pregnant_Social : ThoughtWorker_Precept_Social + { + /// Gets the current thought state of the given pawn. + /// The pawn for whom the thoughts are generated. + /// The pawn about whom the thoughts are generated. + /// + protected override ThoughtState ShouldHaveThought(Pawn p, Pawn otherPawn) + { + return PregnancyHelper.GetPregnancy(otherPawn)?.Visible == true; + } + } +} diff --git a/Source/IdeologyAddon/Ideology/Precepts/Comp_KnowsMemoryThought_Gendered.cs b/Source/IdeologyAddon/Precepts/Comp_KnowsMemoryThought_Gendered.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/Comp_KnowsMemoryThought_Gendered.cs rename to Source/IdeologyAddon/Precepts/Comp_KnowsMemoryThought_Gendered.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/Comp_SelfTookMemoryThought_Gendered.cs b/Source/IdeologyAddon/Precepts/Comp_SelfTookMemoryThought_Gendered.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/Comp_SelfTookMemoryThought_Gendered.cs rename to Source/IdeologyAddon/Precepts/Comp_SelfTookMemoryThought_Gendered.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyBestialityMtb.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyBestialityMtb.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyBestialityMtb.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyBestialityMtb.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyFappinMtb.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyFappinMtb.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyFappinMtb.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyFappinMtb.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyMtb.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyMtb.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyMtb.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyNecroMtb.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyNecroMtb.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyNecroMtb.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyNecroMtb.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyPreference.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyPreference.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyPreference.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyPreference.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyRapeCPMtb.cs b/Source/IdeologyAddon/Precepts/DefExtension_ModifyRapeCPMtb.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_ModifyRapeCPMtb.cs rename to Source/IdeologyAddon/Precepts/DefExtension_ModifyRapeCPMtb.cs diff --git a/Source/IdeologyAddon/Ideology/Precepts/DefExtension_MultipleMemesRequired.cs b/Source/IdeologyAddon/Precepts/DefExtension_MultipleMemesRequired.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Precepts/DefExtension_MultipleMemesRequired.cs rename to Source/IdeologyAddon/Precepts/DefExtension_MultipleMemesRequired.cs diff --git a/Source/IdeologyAddon/Ideology/RelationFilter.cs b/Source/IdeologyAddon/RelationFilter.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/RelationFilter.cs rename to Source/IdeologyAddon/RelationFilter.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/JobGiver_DrugOrgy.cs b/Source/IdeologyAddon/Rituals/JobGiver_DrugOrgy.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/JobGiver_DrugOrgy.cs rename to Source/IdeologyAddon/Rituals/JobGiver_DrugOrgy.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/JobGiver_GangbangConsensual.cs b/Source/IdeologyAddon/Rituals/JobGiver_GangbangConsensual.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/JobGiver_GangbangConsensual.cs rename to Source/IdeologyAddon/Rituals/JobGiver_GangbangConsensual.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/JobGiver_GangbangVictim.cs b/Source/IdeologyAddon/Rituals/JobGiver_GangbangVictim.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/JobGiver_GangbangVictim.cs rename to Source/IdeologyAddon/Rituals/JobGiver_GangbangVictim.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/LordJob_Rituals.cs b/Source/IdeologyAddon/Rituals/LordJob_Rituals.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/LordJob_Rituals.cs rename to Source/IdeologyAddon/Rituals/LordJob_Rituals.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/RitualBehaviorWorkers.cs b/Source/IdeologyAddon/Rituals/RitualBehaviorWorkers.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/RitualBehaviorWorkers.cs rename to Source/IdeologyAddon/Rituals/RitualBehaviorWorkers.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/RitualOutcomeComps.cs b/Source/IdeologyAddon/Rituals/RitualOutcomeComps.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/RitualOutcomeComps.cs rename to Source/IdeologyAddon/Rituals/RitualOutcomeComps.cs diff --git a/Source/IdeologyAddon/Ideology/Rituals/RitualRoles.cs b/Source/IdeologyAddon/Rituals/RitualRoles.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/Rituals/RitualRoles.cs rename to Source/IdeologyAddon/Rituals/RitualRoles.cs diff --git a/Source/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs b/Source/IdeologyAddon/RsiHistoryEventDefOf.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/RsiHistoryEventDefOf.cs rename to Source/IdeologyAddon/RsiHistoryEventDefOf.cs diff --git a/Source/IdeologyAddon/Ideology/SinglePawnFilter.cs b/Source/IdeologyAddon/SinglePawnFilter.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/SinglePawnFilter.cs rename to Source/IdeologyAddon/SinglePawnFilter.cs diff --git a/Source/IdeologyAddon/Ideology/StatParts.cs b/Source/IdeologyAddon/StatParts.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/StatParts.cs rename to Source/IdeologyAddon/StatParts.cs diff --git a/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_IncreaseRecord.cs b/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_IncreaseRecord.cs index 63ce3d7..cf53e45 100644 --- a/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_IncreaseRecord.cs +++ b/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_IncreaseRecord.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using Verse; -namespace RJWSexperience +namespace RJWSexperience.Ideology { public class ThoughtDefExtension_IncreaseRecord : DefModExtension { diff --git a/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromOpinion.cs b/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromValue.cs similarity index 73% rename from Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromOpinion.cs rename to Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromValue.cs index 3b6bfc4..8e556de 100644 --- a/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromOpinion.cs +++ b/Source/IdeologyAddon/Thoughts/ThoughtDefExtension_StageFromValue.cs @@ -2,13 +2,26 @@ using System.Diagnostics.CodeAnalysis; using Verse; -namespace RJWSexperience +namespace RJWSexperience.Ideology { - public class ThoughtDefExtension_StageFromOpinion : DefModExtension + public class ThoughtDefExtension_StageFromValue : DefModExtension { [SuppressMessage("Minor Code Smell", "S1104:Fields should not have public accessibility", Justification = "Field value loaded from XML")] public List minimumValueforStage = new List(); + public int GetStageIndex(float value) + { + for (int i = minimumValueforStage.Count - 1; i > 0; i--) + { + if (minimumValueforStage[i] < value) + { + return i; + } + } + + return 0; + } + public override IEnumerable ConfigErrors() { foreach (string error in base.ConfigErrors()) diff --git a/Source/IdeologyAddon/Thoughts/Thought_IncreaseRecord.cs b/Source/IdeologyAddon/Thoughts/Thought_IncreaseRecord.cs index f229813..1299dd3 100644 --- a/Source/IdeologyAddon/Thoughts/Thought_IncreaseRecord.cs +++ b/Source/IdeologyAddon/Thoughts/Thought_IncreaseRecord.cs @@ -1,6 +1,6 @@ using RimWorld; -namespace RJWSexperience +namespace RJWSexperience.Ideology { /// /// Increments record every time the thought is added diff --git a/Source/IdeologyAddon/Thoughts/Thought_Opinionbased.cs b/Source/IdeologyAddon/Thoughts/Thought_Opinionbased.cs index fded6ad..dbe0115 100644 --- a/Source/IdeologyAddon/Thoughts/Thought_Opinionbased.cs +++ b/Source/IdeologyAddon/Thoughts/Thought_Opinionbased.cs @@ -1,22 +1,21 @@ using RimWorld; -using System.Collections.Generic; using Verse; -namespace RJWSexperience +namespace RJWSexperience.Ideology { public class Thought_Opinionbased : Thought_Memory { - private List minimumValueforStage; + private ThoughtDefExtension_StageFromValue stageFromValue; - protected List MinimumValueforStage + protected ThoughtDefExtension_StageFromValue StageFromValue { get { - if (minimumValueforStage == null) + if (stageFromValue == null) { - minimumValueforStage = def.GetModExtension().minimumValueforStage; + stageFromValue = def.GetModExtension(); } - return minimumValueforStage; + return stageFromValue; } } @@ -47,16 +46,7 @@ namespace RJWSexperience } float value = pawn.relations?.OpinionOf(otherPawn) ?? 0f; - - for (int i = MinimumValueforStage.Count - 1; i > 0; i--) - { - if (MinimumValueforStage[i] < value) - { - SetForcedStage(i); - return; - } - } - SetForcedStage(0); + SetForcedStage(StageFromValue.GetStageIndex(value)); } } } diff --git a/Source/IdeologyAddon/Ideology/TwoPawnFilter.cs b/Source/IdeologyAddon/TwoPawnFilter.cs similarity index 100% rename from Source/IdeologyAddon/Ideology/TwoPawnFilter.cs rename to Source/IdeologyAddon/TwoPawnFilter.cs diff --git a/Source/IdeologyAddon/Ideology/VariousDefOf.cs b/Source/IdeologyAddon/VariousDefOf.cs similarity index 77% rename from Source/IdeologyAddon/Ideology/VariousDefOf.cs rename to Source/IdeologyAddon/VariousDefOf.cs index 4cce63e..8e8456a 100644 --- a/Source/IdeologyAddon/Ideology/VariousDefOf.cs +++ b/Source/IdeologyAddon/VariousDefOf.cs @@ -22,9 +22,6 @@ namespace RJWSexperience.Ideology [MayRequireIdeology] public static readonly PreceptDef Submissive_Male; [MayRequireIdeology] public static readonly PreceptDef Submissive_Female; [MayRequireIdeology] public static readonly PreceptDef Proselyzing_By_Orgasm; - [MayRequireIdeology] public static readonly PreceptDef Proselyzing_By_Sex; - [MayRequireIdeology] public static readonly PreceptDef GenitalSize_Approved; - [MayRequireIdeology] public static readonly PreceptDef GenitalSize_Disapproved; - [MayRequireIdeology] public static readonly PreceptDef GenitalSize_NoRules; + //[MayRequireIdeology] public static readonly PreceptDef Proselyzing_By_Sex; } }