diff --git a/1.4/Assemblies/RJW_More_Genes.dll b/1.4/Assemblies/RJW_More_Genes.dll index aaa2793..a395e0d 100644 Binary files a/1.4/Assemblies/RJW_More_Genes.dll and b/1.4/Assemblies/RJW_More_Genes.dll differ diff --git a/1.4/Defs/JobDefs/Jobs_Sex.xml b/1.4/Defs/JobDefs/Jobs_Sex.xml index bd94358..3690d7a 100644 --- a/1.4/Defs/JobDefs/Jobs_Sex.xml +++ b/1.4/Defs/JobDefs/Jobs_Sex.xml @@ -7,4 +7,11 @@ forced masturbatin'. false + + + MiscSexReciever + RJW_More_Genes.JobDriver_MiscSexBaseReciever + lovin'. + false + \ No newline at end of file diff --git a/1.4/Mods/PsycastExpanded/Assemblies/RJWMoreGenes_VPE.dll b/1.4/Mods/PsycastExpanded/Assemblies/RJWMoreGenes_VPE.dll index 77e62fb..2f1a618 100644 Binary files a/1.4/Mods/PsycastExpanded/Assemblies/RJWMoreGenes_VPE.dll and b/1.4/Mods/PsycastExpanded/Assemblies/RJWMoreGenes_VPE.dll differ diff --git a/1.4/Source/RJWM_VPE/obj/Debug/RJWM_VPE.csproj.AssemblyReference.cache b/1.4/Source/RJWM_VPE/obj/Debug/RJWM_VPE.csproj.AssemblyReference.cache index d9f0e9f..7dcf8a1 100644 Binary files a/1.4/Source/RJWM_VPE/obj/Debug/RJWM_VPE.csproj.AssemblyReference.cache and b/1.4/Source/RJWM_VPE/obj/Debug/RJWM_VPE.csproj.AssemblyReference.cache differ diff --git a/1.4/Source/RJWM_VPE/obj/Debug/RJWMoreGenes_VPE.dll b/1.4/Source/RJWM_VPE/obj/Debug/RJWMoreGenes_VPE.dll index 77e62fb..2f1a618 100644 Binary files a/1.4/Source/RJWM_VPE/obj/Debug/RJWMoreGenes_VPE.dll and b/1.4/Source/RJWM_VPE/obj/Debug/RJWMoreGenes_VPE.dll differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/15ef052f-a9dc-4b67-a3b7-2c892b0e7b5e.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/15ef052f-a9dc-4b67-a3b7-2c892b0e7b5e.vsidx deleted file mode 100644 index 7ffd93e..0000000 Binary files a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/15ef052f-a9dc-4b67-a3b7-2c892b0e7b5e.vsidx and /dev/null differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/8e9c036b-d7a9-45d6-a1ab-ec43e37790e2.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6160c465-f56d-4480-bebd-95942d1e778d.vsidx similarity index 72% rename from 1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/8e9c036b-d7a9-45d6-a1ab-ec43e37790e2.vsidx rename to 1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6160c465-f56d-4480-bebd-95942d1e778d.vsidx index 8058742..a951542 100644 Binary files a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/8e9c036b-d7a9-45d6-a1ab-ec43e37790e2.vsidx and b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6160c465-f56d-4480-bebd-95942d1e778d.vsidx differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6d1fcf05-a934-4f78-8615-7dac3d32ea46.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6d1fcf05-a934-4f78-8615-7dac3d32ea46.vsidx deleted file mode 100644 index b68a421..0000000 Binary files a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/6d1fcf05-a934-4f78-8615-7dac3d32ea46.vsidx and /dev/null differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/d371f01b-a764-47ee-af15-7a4c5ae34057.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/d371f01b-a764-47ee-af15-7a4c5ae34057.vsidx new file mode 100644 index 0000000..b5cd925 Binary files /dev/null and b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/d371f01b-a764-47ee-af15-7a4c5ae34057.vsidx differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/ebb5b3ab-8f90-4b71-877a-45ba96c0c88a.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/ebb5b3ab-8f90-4b71-877a-45ba96c0c88a.vsidx new file mode 100644 index 0000000..3ce2d1b Binary files /dev/null and b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/ebb5b3ab-8f90-4b71-877a-45ba96c0c88a.vsidx differ diff --git a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/v17/.suo b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/v17/.suo index affd29f..cc1d16e 100644 Binary files a/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/v17/.suo and b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/v17/.suo differ diff --git a/1.4/Source/RJW_More_Genes/JobDefOf.cs b/1.4/Source/RJW_More_Genes/JobDefOf.cs index 4e69d4d..6fb7eca 100644 --- a/1.4/Source/RJW_More_Genes/JobDefOf.cs +++ b/1.4/Source/RJW_More_Genes/JobDefOf.cs @@ -12,5 +12,7 @@ namespace RJW_More_Genes public static class JobDefOf { public static readonly JobDef Mindbreak; + public static readonly JobDef MiscSexReciever; + public static readonly JobDef HealPussy; } } diff --git a/1.4/Source/RJW_More_Genes/JobDriver_CastAbilityAfterSex.cs b/1.4/Source/RJW_More_Genes/JobDriver_CastAbilityAfterSex.cs index 587a73a..d810c83 100644 --- a/1.4/Source/RJW_More_Genes/JobDriver_CastAbilityAfterSex.cs +++ b/1.4/Source/RJW_More_Genes/JobDriver_CastAbilityAfterSex.cs @@ -19,7 +19,11 @@ namespace RJW_More_Genes //this.FailOnCannotTouch(TargetIndex.B, PathEndMode.OnCell); this.FailOnDespawnedNullOrForbidden(this.iTarget); //this.FailOn(() => !target.health.capacities.CanBeAwake); - JobDef PartnerJob = xxx.gettin_raped; + JobDef PartnerJob = xxx.getting_quickie; + if(RJWMGSettings.consensual_pussyheal) + { + PartnerJob = JobDefOf.MiscSexReciever; + } yield return Toils_Goto.Goto(TargetIndex.A, PathEndMode.OnCell); yield return new Toil { @@ -46,6 +50,11 @@ namespace RJW_More_Genes if (comp.props is CompProperties_SexInteractionRequirements) { CompProperties_SexInteractionRequirements sexpropsreq = comp.props as CompProperties_SexInteractionRequirements; + if (RJWMGSettings.gene_pussyheal) + { + sexpropsreq.tags.Clear(); + sexpropsreq.tags.Add(rjw.Modules.Interactions.Enums.InteractionTag.Consensual); + } this.Sexprops = SexInteractionUtility.GenerateSexProps(this.pawn, this.Partner, sexpropsreq); } } diff --git a/1.4/Source/RJW_More_Genes/JobDriver_MiscSexBaseReciever.cs b/1.4/Source/RJW_More_Genes/JobDriver_MiscSexBaseReciever.cs new file mode 100644 index 0000000..ed78022 --- /dev/null +++ b/1.4/Source/RJW_More_Genes/JobDriver_MiscSexBaseReciever.cs @@ -0,0 +1,65 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using RimWorld; +using Verse; +using Verse.AI; +using rjw; + +namespace RJW_More_Genes +{ + //Made this quickly may have some mistakes + public class JobDriver_MiscSexBaseReciever: JobDriver_SexBaseReciever + { + protected override IEnumerable MakeNewToils() + { + base.setup_ticks(); + this.parteners.Add(base.Partner); + this.FailOnDespawnedOrNull(this.iTarget); + this.FailOn(() => !base.Partner.health.capacities.CanBeAwake); + this.FailOn(() => this.pawn.Drafted); + this.FailOn(() => base.Partner.Drafted); + Toil toil = this.MakeSexToil(); + toil.FailOn(() => base.Partner.CurJob.def != JobDefOf.HealPussy); //or other jobs in the future + yield return toil; + + + yield break; + } + + private Toil MakeSexToil() + { + Toil toil = new Toil(); + toil.defaultCompleteMode = ToilCompleteMode.Never; + toil.socialMode = RandomSocialMode.Off; + toil.handlingFacing = true; + toil.tickAction = delegate () + { + if (this.pawn.IsHashIntervalTick(this.ticks_between_hearts)) + { + base.ThrowMetaIconF(this.pawn.Position, this.pawn.Map, FleckDefOf.Heart); + } + }; + toil.AddEndCondition(delegate + { + if (this.parteners.Count <= 0) + { + return JobCondition.Succeeded; + } + return JobCondition.Ongoing; + }); + toil.AddFinishAction(delegate + { + if (xxx.is_human(this.pawn)) + { + this.pawn.Drawer.renderer.graphics.ResolveApparelGraphics(); + } + GlobalTextureAtlasManager.TryMarkPawnFrameSetDirty(this.pawn); + }); + toil.socialMode = RandomSocialMode.Off; + return toil; + } + } +} diff --git a/1.4/Source/RJW_More_Genes/RJWMGSettings.cs b/1.4/Source/RJW_More_Genes/RJWMGSettings.cs index ac0bb2c..6dba739 100644 --- a/1.4/Source/RJW_More_Genes/RJWMGSettings.cs +++ b/1.4/Source/RJW_More_Genes/RJWMGSettings.cs @@ -21,7 +21,10 @@ namespace RJW_More_Genes listing_Standard.Begin(rect); listing_Standard.Gap(24f); listing_Standard.CheckboxLabeled("gene pussyheal", ref gene_pussyheal, "disable the effects of the gene", 0f, 1f); + listing_Standard.Gap(3f); listing_Standard.CheckboxLabeled("sexfrenzy", ref sexfrenzy, "disable the effects", 0f, 1f); + listing_Standard.Gap(3f); + listing_Standard.CheckboxLabeled("consensual_pussyheal", ref consensual_pussyheal, "pussyheal counts as consensual sex instead of rape", 0f, 1f); listing_Standard.End(); } @@ -30,8 +33,10 @@ namespace RJW_More_Genes base.ExposeData(); Scribe_Values.Look(ref RJWMGSettings.gene_pussyheal, "gene_pussyheal", RJWMGSettings.gene_pussyheal, true); Scribe_Values.Look(ref RJWMGSettings.sexfrenzy, "sexfrenzy", RJWMGSettings.sexfrenzy, true); + Scribe_Values.Look(ref RJWMGSettings.consensual_pussyheal, "consensual_pussyheal", RJWMGSettings.consensual_pussyheal, false); } public static bool gene_pussyheal = true; public static bool sexfrenzy = true; + public static bool consensual_pussyheal = true; } } diff --git a/1.4/Source/RJW_More_Genes/RJW_More_Genes.csproj b/1.4/Source/RJW_More_Genes/RJW_More_Genes.csproj index cb4f45e..31ca910 100644 --- a/1.4/Source/RJW_More_Genes/RJW_More_Genes.csproj +++ b/1.4/Source/RJW_More_Genes/RJW_More_Genes.csproj @@ -69,6 +69,7 @@ + @@ -85,7 +86,7 @@ - + diff --git a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.AssemblyReference.cache b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.AssemblyReference.cache index 2f77d2f..21dca4e 100644 Binary files a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.AssemblyReference.cache and b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.AssemblyReference.cache differ diff --git a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.CoreCompileInputs.cache b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.CoreCompileInputs.cache index 531db74..e431564 100644 --- a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.CoreCompileInputs.cache +++ b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -a5ab93a622659cbd8dd55dafbd7ec218b2635267 +a9c54690bdfa5f3538ab47c50ae6d6f8f88e1b94 diff --git a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.dll b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.dll index aaa2793..a395e0d 100644 Binary files a/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.dll and b/1.4/Source/RJW_More_Genes/obj/Debug/RJW_More_Genes.dll differ