mirror of
https://github.com/Shabakur/RJW_More_.git
synced 2024-08-14 23:57:04 +00:00
Compare commits
4 commits
7b033ff6d6
...
ac84a7311d
Author | SHA1 | Date | |
---|---|---|---|
|
ac84a7311d | ||
|
8a0cc71dfe | ||
|
7343b4271e | ||
|
1651afe4dd |
21 changed files with 108 additions and 6 deletions
Binary file not shown.
|
@ -7,4 +7,11 @@
|
||||||
<reportString>forced masturbatin'.</reportString>
|
<reportString>forced masturbatin'.</reportString>
|
||||||
<casualInterruptible>false</casualInterruptible>
|
<casualInterruptible>false</casualInterruptible>
|
||||||
</JobDef>
|
</JobDef>
|
||||||
|
|
||||||
|
<JobDef>
|
||||||
|
<defName>MiscSexReciever</defName>
|
||||||
|
<driverClass>RJW_More_Genes.JobDriver_MiscSexBaseReciever</driverClass>
|
||||||
|
<reportString>lovin'.</reportString>
|
||||||
|
<casualInterruptible>false</casualInterruptible>
|
||||||
|
</JobDef>
|
||||||
</Defs>
|
</Defs>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -12,5 +12,7 @@ namespace RJW_More_Genes
|
||||||
public static class JobDefOf
|
public static class JobDefOf
|
||||||
{
|
{
|
||||||
public static readonly JobDef Mindbreak;
|
public static readonly JobDef Mindbreak;
|
||||||
|
public static readonly JobDef MiscSexReciever;
|
||||||
|
public static readonly JobDef HealPussy;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,11 @@ namespace RJW_More_Genes
|
||||||
//this.FailOnCannotTouch(TargetIndex.B, PathEndMode.OnCell);
|
//this.FailOnCannotTouch(TargetIndex.B, PathEndMode.OnCell);
|
||||||
this.FailOnDespawnedNullOrForbidden(this.iTarget);
|
this.FailOnDespawnedNullOrForbidden(this.iTarget);
|
||||||
//this.FailOn(() => !target.health.capacities.CanBeAwake);
|
//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 Toils_Goto.Goto(TargetIndex.A, PathEndMode.OnCell);
|
||||||
yield return new Toil
|
yield return new Toil
|
||||||
{
|
{
|
||||||
|
@ -46,6 +50,11 @@ namespace RJW_More_Genes
|
||||||
if (comp.props is CompProperties_SexInteractionRequirements)
|
if (comp.props is CompProperties_SexInteractionRequirements)
|
||||||
{
|
{
|
||||||
CompProperties_SexInteractionRequirements sexpropsreq = comp.props as 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);
|
this.Sexprops = SexInteractionUtility.GenerateSexProps(this.pawn, this.Partner, sexpropsreq);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
65
1.4/Source/RJW_More_Genes/JobDriver_MiscSexBaseReciever.cs
Normal file
65
1.4/Source/RJW_More_Genes/JobDriver_MiscSexBaseReciever.cs
Normal file
|
@ -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<Toil> 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -21,7 +21,10 @@ namespace RJW_More_Genes
|
||||||
listing_Standard.Begin(rect);
|
listing_Standard.Begin(rect);
|
||||||
listing_Standard.Gap(24f);
|
listing_Standard.Gap(24f);
|
||||||
listing_Standard.CheckboxLabeled("gene pussyheal", ref gene_pussyheal, "disable the effects of the gene", 0f, 1f);
|
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();
|
listing_Standard.End();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,8 +33,10 @@ namespace RJW_More_Genes
|
||||||
base.ExposeData();
|
base.ExposeData();
|
||||||
Scribe_Values.Look<bool>(ref RJWMGSettings.gene_pussyheal, "gene_pussyheal", RJWMGSettings.gene_pussyheal, true);
|
Scribe_Values.Look<bool>(ref RJWMGSettings.gene_pussyheal, "gene_pussyheal", RJWMGSettings.gene_pussyheal, true);
|
||||||
Scribe_Values.Look<bool>(ref RJWMGSettings.sexfrenzy, "sexfrenzy", RJWMGSettings.sexfrenzy, true);
|
Scribe_Values.Look<bool>(ref RJWMGSettings.sexfrenzy, "sexfrenzy", RJWMGSettings.sexfrenzy, true);
|
||||||
|
Scribe_Values.Look<bool>(ref RJWMGSettings.consensual_pussyheal, "consensual_pussyheal", RJWMGSettings.consensual_pussyheal, false);
|
||||||
}
|
}
|
||||||
public static bool gene_pussyheal = true;
|
public static bool gene_pussyheal = true;
|
||||||
public static bool sexfrenzy = true;
|
public static bool sexfrenzy = true;
|
||||||
|
public static bool consensual_pussyheal = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,6 +69,7 @@
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="JobDriver_CastAbilityAfterSex.cs" />
|
||||||
<Compile Include="Royalty\AbilityUtility.cs" />
|
<Compile Include="Royalty\AbilityUtility.cs" />
|
||||||
<Compile Include="Royalty\CompAbilityEffect_Orgasm.cs" />
|
<Compile Include="Royalty\CompAbilityEffect_Orgasm.cs" />
|
||||||
<Compile Include="Royalty\CompAbilityEffect_SexFrenzy.cs" />
|
<Compile Include="Royalty\CompAbilityEffect_SexFrenzy.cs" />
|
||||||
|
@ -85,7 +86,7 @@
|
||||||
<Compile Include="Royalty\HediffComp_OrgasmCycle.cs" />
|
<Compile Include="Royalty\HediffComp_OrgasmCycle.cs" />
|
||||||
<Compile Include="HediffDefOf.cs" />
|
<Compile Include="HediffDefOf.cs" />
|
||||||
<Compile Include="JobDefOf.cs" />
|
<Compile Include="JobDefOf.cs" />
|
||||||
<Compile Include="JobDriver_CastAbilityAfterSex.cs" />
|
<Compile Include="JobDriver_MiscSexBaseReciever.cs" />
|
||||||
<Compile Include="JobDriver_Mindbreak.cs" />
|
<Compile Include="JobDriver_Mindbreak.cs" />
|
||||||
<Compile Include="MentalStateDefOf.cs" />
|
<Compile Include="MentalStateDefOf.cs" />
|
||||||
<Compile Include="PatchProcessSex.cs" />
|
<Compile Include="PatchProcessSex.cs" />
|
||||||
|
|
|
@ -90,7 +90,7 @@ namespace RJW_More_Genes
|
||||||
reason = this.parent.pawn.Name + " has no vagina to use.";
|
reason = this.parent.pawn.Name + " has no vagina to use.";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (!RJWSettings.rape_enabled)
|
else if (!RJWSettings.rape_enabled && !RJWMGSettings.consensual_pussyheal)
|
||||||
{
|
{
|
||||||
reason = "Rape is disabled";
|
reason = "Rape is disabled";
|
||||||
return true;
|
return true;
|
||||||
|
|
Binary file not shown.
|
@ -1 +1 @@
|
||||||
a5ab93a622659cbd8dd55dafbd7ec218b2635267
|
a9c54690bdfa5f3538ab47c50ae6d6f8f88e1b94
|
||||||
|
|
Binary file not shown.
13
changelog.md
13
changelog.md
|
@ -1,24 +1,37 @@
|
||||||
V1.0 Made Changelog, currently have insectincubator and mechbreeder genes
|
V1.0 Made Changelog, currently have insectincubator and mechbreeder genes
|
||||||
|
|
||||||
V1.0.1 Fixed some null errors in geneutility
|
V1.0.1 Fixed some null errors in geneutility
|
||||||
|
|
||||||
V1.0.2 Added insectbreeder gene
|
V1.0.2 Added insectbreeder gene
|
||||||
|
|
||||||
V1.0.3 Added Healpussy Gene
|
V1.0.3 Added Healpussy Gene
|
||||||
|
|
||||||
V1.0.4 Changed Name and Removed Genes which were copied to rjw_genes
|
V1.0.4 Changed Name and Removed Genes which were copied to rjw_genes
|
||||||
|
|
||||||
V1.0.5
|
V1.0.5
|
||||||
- Allowed Healpussy to work on animals
|
- Allowed Healpussy to work on animals
|
||||||
|
|
||||||
V1.0.6
|
V1.0.6
|
||||||
- Allowed Healpussy to work passively
|
- Allowed Healpussy to work passively
|
||||||
- Added checks for RJWsettings and if the pawn has a vagina.
|
- Added checks for RJWsettings and if the pawn has a vagina.
|
||||||
|
|
||||||
V1.0.7
|
V1.0.7
|
||||||
- Removed Dependency on biotech, Mod will "function" without biotech enabled, but has no non-biotech required content currently.
|
- Removed Dependency on biotech, Mod will "function" without biotech enabled, but has no non-biotech required content currently.
|
||||||
|
|
||||||
V1.1.0
|
V1.1.0
|
||||||
- Added mindbreak lance
|
- Added mindbreak lance
|
||||||
- Changed sexfrenzy from a gene to a psycast
|
- Changed sexfrenzy from a gene to a psycast
|
||||||
|
|
||||||
V1.1.1
|
V1.1.1
|
||||||
- Fixed error when sexfrenzy hit an animal
|
- Fixed error when sexfrenzy hit an animal
|
||||||
- Add orgasm psypower
|
- Add orgasm psypower
|
||||||
- Add multiorgasm psypower
|
- Add multiorgasm psypower
|
||||||
- Made all current psypowers compatible with vanilla psycast expanded
|
- Made all current psypowers compatible with vanilla psycast expanded
|
||||||
|
|
||||||
V1.1.2
|
V1.1.2
|
||||||
- Pawns affected by sexfrenzy only rape pawns who they are attracted to.
|
- Pawns affected by sexfrenzy only rape pawns who they are attracted to.
|
||||||
- Removed healpussy cooldown
|
- Removed healpussy cooldown
|
||||||
- Fixed Mindbreak Lance
|
- Fixed Mindbreak Lance
|
||||||
|
|
||||||
|
V1.1.3
|
||||||
|
- Added setting for consensual pussyheal
|
||||||
|
|
Loading…
Reference in a new issue