diff --git a/1.4/Assemblies/RJW_More_Genes.dll b/1.4/Assemblies/RJW_More_Genes.dll index aaa2793..de338e8 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..51899e0 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/66b94388-a754-4ccd-877c-dc381273f1cb.vsidx b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/66b94388-a754-4ccd-877c-dc381273f1cb.vsidx new file mode 100644 index 0000000..649b07b Binary files /dev/null and b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/FileContentIndex/66b94388-a754-4ccd-877c-dc381273f1cb.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/v17/.suo b/1.4/Source/RJW_More_Genes/.vs/RJW_More_Genes/v17/.suo index affd29f..251df1f 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..7ab167b 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.CheckboxLabeled("sexfrenzy", ref sexfrenzy, "disable the effects", 0f, 1f); + listing_Standard.Gap(3f); + listing_Standard.CheckboxLabeled("sexfrenzy", ref sexfrenzy, "disable the effects of the gene", 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/Royalty/CompAbilityEffect_PussyHeal.cs b/1.4/Source/RJW_More_Genes/Royalty/CompAbilityEffect_PussyHeal.cs index f36193d..041507e 100644 --- a/1.4/Source/RJW_More_Genes/Royalty/CompAbilityEffect_PussyHeal.cs +++ b/1.4/Source/RJW_More_Genes/Royalty/CompAbilityEffect_PussyHeal.cs @@ -90,7 +90,7 @@ namespace RJW_More_Genes reason = this.parent.pawn.Name + " has no vagina to use."; return true; } - else if (!RJWSettings.rape_enabled) + else if (!RJWSettings.rape_enabled && !RJWMGSettings.consensual_pussyheal) { reason = "Rape is disabled"; return true; 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..de338e8 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 diff --git a/changelog.md b/changelog.md index bb358ac..b249c39 100644 --- a/changelog.md +++ b/changelog.md @@ -1,24 +1,37 @@ V1.0 Made Changelog, currently have insectincubator and mechbreeder genes + V1.0.1 Fixed some null errors in geneutility + V1.0.2 Added insectbreeder gene + V1.0.3 Added Healpussy Gene + V1.0.4 Changed Name and Removed Genes which were copied to rjw_genes + V1.0.5 - Allowed Healpussy to work on animals + V1.0.6 - Allowed Healpussy to work passively - Added checks for RJWsettings and if the pawn has a vagina. + V1.0.7 - Removed Dependency on biotech, Mod will "function" without biotech enabled, but has no non-biotech required content currently. + V1.1.0 - Added mindbreak lance - Changed sexfrenzy from a gene to a psycast + V1.1.1 - Fixed error when sexfrenzy hit an animal - Add orgasm psypower - Add multiorgasm psypower - Made all current psypowers compatible with vanilla psycast expanded + V1.1.2 - Pawns affected by sexfrenzy only rape pawns who they are attracted to. - Removed healpussy cooldown -- Fixed Mindbreak Lance \ No newline at end of file +- Fixed Mindbreak Lance + +V1.1.3 +- Added setting for consensual pussyheal