From b1e6f05a233e42164fb4b6db47b60d242cd377a9 Mon Sep 17 00:00:00 2001 From: amevarashi Date: Sat, 23 Jul 2022 15:41:57 +0500 Subject: [PATCH] Support for RJW-CUM --- Defs/JobDefs/Jobs_CleanSelfwithBucket.xml | 2 +- Defs/WorkGiverDefs/WorkGivers_CleanSelf.xml | 4 +- .../Cum/JobDriver_CleanSelfWithBucket.cs | 5 +- .../Cum/WorkGiver_CleanSelfWithBucket.cs | 6 +- RJWSexperience/RJWSexperience/VariousDefOf.cs | 58 ++++++++++--------- 5 files changed, 38 insertions(+), 37 deletions(-) diff --git a/Defs/JobDefs/Jobs_CleanSelfwithBucket.xml b/Defs/JobDefs/Jobs_CleanSelfwithBucket.xml index 7b8b8cd..38c83ae 100644 --- a/Defs/JobDefs/Jobs_CleanSelfwithBucket.xml +++ b/Defs/JobDefs/Jobs_CleanSelfwithBucket.xml @@ -1,7 +1,7 @@ - + CleanSelfwithBucket RJWSexperience.JobDriver_CleanSelfWithBucket collecting cum diff --git a/Defs/WorkGiverDefs/WorkGivers_CleanSelf.xml b/Defs/WorkGiverDefs/WorkGivers_CleanSelf.xml index 943e37a..bb1b239 100644 --- a/Defs/WorkGiverDefs/WorkGivers_CleanSelf.xml +++ b/Defs/WorkGiverDefs/WorkGivers_CleanSelf.xml @@ -1,6 +1,6 @@ - + CleanSelfwithBucket RJWSexperience.Cum.WorkGiver_CleanSelfWithBucket @@ -8,7 +8,7 @@ collect cum into a collecting cum into a false - 12 + 12 true
  • Manipulation
  • diff --git a/RJWSexperience/RJWSexperience/Cum/JobDriver_CleanSelfWithBucket.cs b/RJWSexperience/RJWSexperience/Cum/JobDriver_CleanSelfWithBucket.cs index 1284624..e56a0e3 100644 --- a/RJWSexperience/RJWSexperience/Cum/JobDriver_CleanSelfWithBucket.cs +++ b/RJWSexperience/RJWSexperience/Cum/JobDriver_CleanSelfWithBucket.cs @@ -1,5 +1,4 @@ using RimWorld; -using rjw; using System.Collections.Generic; using Verse; using Verse.AI; @@ -32,7 +31,7 @@ namespace RJWSexperience // Used in Menstruation with this namespace this.FailOn(delegate { List hediffs = pawn.health.hediffSet.hediffs; - return !hediffs.Exists(x => x.def == RJW_SemenoOverlayHediffDefOf.Hediff_Bukkake); + return !hediffs.Exists(x => x.def == VariousDefOf.Hediff_CumController); }); yield return Toils_Goto.GotoThing(TargetIndex.B, PathEndMode.ClosestTouch); Toil cleaning = new Toil @@ -49,7 +48,7 @@ namespace RJWSexperience // Used in Menstruation with this namespace protected void CleaningInit() { - hediffcache = pawn.health.hediffSet.hediffs.Find(x => x.def == RJW_SemenoOverlayHediffDefOf.Hediff_Semen || x.def == RJW_SemenoOverlayHediffDefOf.Hediff_InsectSpunk); + hediffcache = pawn.health.hediffSet.hediffs.Find(x => x.def == VariousDefOf.Hediff_Cum || x.def == VariousDefOf.Hediff_InsectSpunk); if (hediffcache == null) { pawn.jobs.EndCurrentJob(JobCondition.Succeeded); diff --git a/RJWSexperience/RJWSexperience/Cum/WorkGiver_CleanSelfWithBucket.cs b/RJWSexperience/RJWSexperience/Cum/WorkGiver_CleanSelfWithBucket.cs index 315dc28..8a1ba96 100644 --- a/RJWSexperience/RJWSexperience/Cum/WorkGiver_CleanSelfWithBucket.cs +++ b/RJWSexperience/RJWSexperience/Cum/WorkGiver_CleanSelfWithBucket.cs @@ -1,8 +1,4 @@ using RimWorld; -using rjw; -using System; -using System.Collections.Generic; -using System.Linq; using Verse; using Verse.AI; @@ -14,7 +10,7 @@ namespace RJWSexperience.Cum public override PathEndMode PathEndMode => PathEndMode.ClosestTouch; public override bool ShouldSkip(Pawn pawn, bool forced = false) { - return !pawn.health.hediffSet.HasHediff(RJW_SemenoOverlayHediffDefOf.Hediff_Bukkake); + return VariousDefOf.Hediff_CumController == null || !pawn.health.hediffSet.HasHediff(VariousDefOf.Hediff_CumController); } public override bool HasJobOnThing(Pawn pawn, Thing t, bool forced = false) diff --git a/RJWSexperience/RJWSexperience/VariousDefOf.cs b/RJWSexperience/RJWSexperience/VariousDefOf.cs index ac33dac..8940ffb 100644 --- a/RJWSexperience/RJWSexperience/VariousDefOf.cs +++ b/RJWSexperience/RJWSexperience/VariousDefOf.cs @@ -3,33 +3,39 @@ using Verse; namespace RJWSexperience { + [DefOf] public static class VariousDefOf { - public static readonly RecordDef NumofEatenCum = DefDatabase.GetNamed("NumofEatenCum"); - public static readonly RecordDef AmountofEatenCum = DefDatabase.GetNamed("AmountofEatenCum"); - public static readonly RecordDef Lust = DefDatabase.GetNamed("Lust"); - public static readonly RecordDef VaginalSexCount = DefDatabase.GetNamed("VaginalSexCount"); - public static readonly RecordDef AnalSexCount = DefDatabase.GetNamed("AnalSexCount"); - public static readonly RecordDef OralSexCount = DefDatabase.GetNamed("OralSexCount"); - public static readonly RecordDef BlowjobCount = DefDatabase.GetNamed("BlowjobCount"); - public static readonly RecordDef CunnilingusCount = DefDatabase.GetNamed("CunnilingusCount"); - public static readonly RecordDef GenitalCaressCount = DefDatabase.GetNamed("GenitalCaressCount"); - public static readonly RecordDef HandjobCount = DefDatabase.GetNamed("HandjobCount"); - public static readonly RecordDef FingeringCount = DefDatabase.GetNamed("FingeringCount"); - public static readonly RecordDef FootjobCount = DefDatabase.GetNamed("FootjobCount"); - public static readonly RecordDef MiscSexualBehaviorCount = DefDatabase.GetNamed("MiscSexualBehaviorCount"); - public static readonly RecordDef SexPartnerCount = DefDatabase.GetNamed("SexPartnerCount"); - public static readonly RecordDef OrgasmCount = DefDatabase.GetNamed("OrgasmCount"); - public static readonly SkillDef SexSkill = DefDatabase.GetNamed("Sex"); - public static readonly ThingDef CumBucket = DefDatabase.GetNamed("CumBucket"); - public static readonly ThingDef GatheredCum = DefDatabase.GetNamed("GatheredCum"); - public static readonly ThingDef FilthCum = ThingDef.Named("FilthCum"); - public static readonly HediffDef CumAddiction = DefDatabase.GetNamed("CumAddiction"); - public static readonly HediffDef CumTolerance = DefDatabase.GetNamed("CumTolerance"); - public static readonly ChemicalDef Cum = DefDatabase.GetNamed("Cum"); - public static readonly NeedDef Chemical_Cum = DefDatabase.GetNamed("Chemical_Cum"); - public static readonly TraitDef Virgin = DefDatabase.GetNamed("Virgin"); - public static readonly JobDef CleanSelfwithBucket = DefDatabase.GetNamed("CleanSelfwithBucket"); - public static readonly KeyBindingDef OpenSexStatistics = DefDatabase.GetNamed("OpenSexStatistics"); + public static readonly RecordDef NumofEatenCum; + public static readonly RecordDef AmountofEatenCum; + public static readonly RecordDef Lust; + public static readonly RecordDef VaginalSexCount; + public static readonly RecordDef AnalSexCount; + public static readonly RecordDef OralSexCount; + public static readonly RecordDef BlowjobCount; + public static readonly RecordDef CunnilingusCount; + public static readonly RecordDef GenitalCaressCount; + public static readonly RecordDef HandjobCount; + public static readonly RecordDef FingeringCount; + public static readonly RecordDef FootjobCount; + public static readonly RecordDef MiscSexualBehaviorCount; + public static readonly RecordDef SexPartnerCount; + public static readonly RecordDef OrgasmCount; + public static readonly SkillDef Sex; + public static readonly ThingDef CumBucket; + public static readonly ThingDef GatheredCum; + public static readonly ThingDef FilthCum; + public static readonly ChemicalDef Cum; + public static readonly NeedDef Chemical_Cum; + public static readonly TraitDef Virgin; + public static readonly JobDef CleanSelfwithBucket; + public static readonly KeyBindingDef OpenSexStatistics; + public static readonly StatDef SexAbility; + + public static readonly HediffDef CumAddiction; + public static readonly HediffDef CumTolerance; + [MayRequire("rjw.cum")] public static readonly HediffDef Hediff_CumController; + [MayRequire("rjw.cum")] public static readonly HediffDef Hediff_Cum; //for humans & animals + [MayRequire("rjw.cum")] public static readonly HediffDef Hediff_InsectSpunk; } }