Fixed mindbreak Lance and added checks sexfrenzy

This commit is contained in:
Shabakur 2023-01-13 18:05:06 +01:00
parent 5034f8ddbf
commit 7b033ff6d6
96 changed files with 73 additions and 77 deletions

Binary file not shown.

View file

@ -8,7 +8,6 @@
<stunTargetWhileCasting>false</stunTargetWhileCasting> <stunTargetWhileCasting>false</stunTargetWhileCasting>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted> <displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted> <disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<cooldownTicksRange>60000</cooldownTicksRange>
<warmupMote>Mote_CoagulateStencil</warmupMote> <warmupMote>Mote_CoagulateStencil</warmupMote>
<warmupEffecter>Coagulate</warmupEffecter> <warmupEffecter>Coagulate</warmupEffecter>
<warmupStartSound>Coagulate_Cast</warmupStartSound> <warmupStartSound>Coagulate_Cast</warmupStartSound>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<GeneDef>
<defName>rjw_genes_pussyhealer</defName> <!--Should not have used that name, but to late to change now.-->
<label>Pussy Healer</label>
<labelShortAdj>pussyhealer</labelShortAdj>
<description>Carriers of this gene are able use vaginal sex to tend to other's wounds.</description>
<iconPath>Things/Mote/Heart</iconPath>
<displayCategory>Ability</displayCategory>
<abilities>
<li>PussyHeal</li>
</abilities>
<descriptionHyperlinks>
<AbilityDef>PussyHeal</AbilityDef>
</descriptionHyperlinks>
<biostatMet>-1</biostatMet>
<minAgeActive>13</minAgeActive>
<symbolPack>
<suffixSymbols>
<li><symbol>life</symbol></li>
<li><symbol>clotter</symbol></li>
<li><symbol>tender</symbol></li>
</suffixSymbols>
</symbolPack>
</GeneDef>
</Defs>

View file

@ -72,7 +72,7 @@
<VFECore.Abilities.AbilityDef ParentName="VPE_PsycastBase"> <VFECore.Abilities.AbilityDef ParentName="VPE_PsycastBase">
<defName>RJWMG_Sexfrenzy</defName> <defName>RJWMG_Sexfrenzy</defName>
<label>Sexfrenzy</label> <label>Sexfrenzy</label>
<description>Causes nearby pawns to go into a sex frenzy, trying to rape anyone if they can.</description> <description>Causes victims to go into a sex frenzy, trying to rape anyone if they can.\n\nThis may fail if victims aren't attracted to any valid targets.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Things/Mote/Heart</iconPath>
<castTime>120</castTime> <castTime>120</castTime>
<range>14.9</range> <range>14.9</range>

View file

@ -3,7 +3,7 @@
<AbilityDef ParentName="PsycastBaseSkip"> <AbilityDef ParentName="PsycastBaseSkip">
<defName>SexFrenzy</defName> <defName>SexFrenzy</defName>
<label>SexFrenzy</label> <label>SexFrenzy</label>
<description>Causes nearby pawns to go into a sex frenzy, trying to rape anyone if they can.</description> <description>Causes victims to go into a sex frenzy, trying to rape anyone if they can.\n\nThis may fail if victims aren't attracted to any valid targets.</description>
<iconPath>Things/Mote/Heart</iconPath> <iconPath>Things/Mote/Heart</iconPath>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted> <displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted> <disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>

View file

@ -72,7 +72,7 @@ namespace RJWMoreGenes_VPE
{ {
foreach (Pawn pawn in map.mapPawns.AllPawns) foreach (Pawn pawn in map.mapPawns.AllPawns)
{ {
if (cell.DistanceTo(pawn.Position) < this.abilityDef.radius) if (cell.DistanceTo(pawn.Position) < this.abilityDef.radius && pawn.RaceProps.Humanlike)
{ {
yield return pawn; yield return pawn;
} }
@ -88,7 +88,7 @@ namespace RJWMoreGenes_VPE
IEnumerable<Pawn> source = from x in m.mapPawns.AllPawnsSpawned IEnumerable<Pawn> source = from x in m.mapPawns.AllPawnsSpawned
where x != pawn && xxx.is_not_dying(x) && (xxx.can_get_raped(x) || (xxx.can_be_fucked(x) && x.health.hediffSet.HasHediff(RJW_More_Genes.HediffDefOf.SexFrenzy))) && where x != pawn && xxx.is_not_dying(x) && (xxx.can_get_raped(x) || (xxx.can_be_fucked(x) && x.health.hediffSet.HasHediff(RJW_More_Genes.HediffDefOf.SexFrenzy))) &&
!x.Suspended && !x.IsForbidden(pawn) && x.jobs.curJob.def.defName != "GettinRaped" && x.jobs.curJob.def.defName != "RandomRape" && !x.Suspended && !x.IsForbidden(pawn) && x.jobs.curJob.def.defName != "GettinRaped" && x.jobs.curJob.def.defName != "RandomRape" &&
IntVec3Utility.DistanceTo(pawn.Position, x.Position) < 15 && pawn.CanReserveAndReach(x, PathEndMode.Touch, Danger.Deadly, 1, 0, null, false) IntVec3Utility.DistanceTo(pawn.Position, x.Position) < 15 && pawn.CanReserveAndReach(x, PathEndMode.Touch, Danger.Deadly, 1, 0, null, false) && SexAppraiser.would_fuck(pawn, x, false, true, false) > 0f
select x; select x;
if (source != null) if (source != null)
{ {

View file

@ -44,11 +44,7 @@
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
<Reference Include="RJW"> <Reference Include="RJW">
<HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\RJW\1.4\Assemblies\RJW.dll</HintPath> <HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\rjw-master\1.4\Assemblies\RJW.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="RJW_More_Genes">
<HintPath>..\..\Assemblies\RJW_More_Genes.dll</HintPath>
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
@ -73,5 +69,12 @@
<Compile Include="AbilityExtentsion_Orgasm.cs" /> <Compile Include="AbilityExtentsion_Orgasm.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\RJW_More_Genes\RJW_More_Genes.csproj">
<Project>{3d62bdb2-ed7b-481b-b00b-0b634d99ec8d}</Project>
<Name>RJW_More_Genes</Name>
<Private>False</Private>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> </Project>

View file

@ -0,0 +1 @@
221b66fda805d8513bce6406ce04f5833ddeb68d

View file

@ -0,0 +1,9 @@
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.AssemblyReference.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.CoreCompileInputs.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Mods\PsycastExpanded\Assemblies\RJWMoreGenes_VPE.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWMoreGenes_VPE.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.CopyComplete
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Mods\PsycastExpanded\Assemblies\RJWMoreGenes_VPE.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.AssemblyReference.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.CoreCompileInputs.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWMoreGenes_VPE.dll

Binary file not shown.

Binary file not shown.

View file

@ -7,7 +7,6 @@ using Verse;
using Verse.AI; using Verse.AI;
using rjw; using rjw;
using RimWorld; using RimWorld;
using Multiplayer.API;
namespace RJW_More_Genes namespace RJW_More_Genes
{ {
public class JobDriver_Mindbreak : JobDriver_SexBaseInitiator public class JobDriver_Mindbreak : JobDriver_SexBaseInitiator
@ -21,11 +20,13 @@ namespace RJW_More_Genes
protected override IEnumerable<Toil> MakeNewToils() protected override IEnumerable<Toil> MakeNewToils()
{ {
this.setup_ticks(); this.setup_ticks();
List<Trait> list = new List<Trait>();
Toil toil2 = Toils_General.Wait(this.max_duration, TargetIndex.None); Toil toil2 = Toils_General.Wait(this.max_duration, TargetIndex.None);
toil2.handlingFacing = true; toil2.handlingFacing = true;
toil2.initAction = delegate () toil2.initAction = delegate ()
{ {
base.Start(); base.Start();
//this.Sexprops.isRape = true; //this.Sexprops.isRape = true;
}; };
toil2.tickAction = delegate () toil2.tickAction = delegate ()
@ -46,8 +47,9 @@ namespace RJW_More_Genes
else else
{ {
this.ticks_left = this.duration; this.ticks_left = this.duration;
AfterSexUtility.processBrokenPawn(this.pawn);
AfterSexUtility.processBrokenPawn(this.pawn); AfterSexUtility.processBrokenPawn(this.pawn, list);
AfterSexUtility.processBrokenPawn(this.pawn, list);
} }
} }
}; };

View file

@ -44,7 +44,7 @@
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
<Reference Include="RJW"> <Reference Include="RJW">
<HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\RJW\1.4\Assemblies\RJW.dll</HintPath> <HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\rjw-master\1.4\Assemblies\RJW.dll</HintPath>
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
@ -55,6 +55,10 @@
<Reference Include="System.Data" /> <Reference Include="System.Data" />
<Reference Include="System.Net.Http" /> <Reference Include="System.Net.Http" />
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
<Reference Include="UnityEngine">
<HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\RimWorldWin64_Data\Managed\UnityEngine.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.CoreModule"> <Reference Include="UnityEngine.CoreModule">
<HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\RimWorldWin64_Data\Managed\UnityEngine.CoreModule.dll</HintPath> <HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\RimWorld\RimWorldWin64_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<Private>False</Private> <Private>False</Private>

View file

@ -69,7 +69,7 @@ namespace RJW_More_Genes
{ {
foreach (Pawn pawn in map.mapPawns.AllPawns) foreach (Pawn pawn in map.mapPawns.AllPawns)
{ {
if (target.Cell.DistanceTo(pawn.Position) < this.Props.radius) if (target.Cell.DistanceTo(pawn.Position) < this.Props.radius && pawn.RaceProps.Humanlike)
{ {
yield return pawn; yield return pawn;
} }
@ -89,7 +89,7 @@ namespace RJW_More_Genes
IEnumerable<Pawn> source = from x in m.mapPawns.AllPawnsSpawned IEnumerable<Pawn> source = from x in m.mapPawns.AllPawnsSpawned
where x != pawn && xxx.is_not_dying(x) && (xxx.can_get_raped(x) || (xxx.can_be_fucked(x) && x.health.hediffSet.HasHediff(HediffDefOf.SexFrenzy))) && where x != pawn && xxx.is_not_dying(x) && (xxx.can_get_raped(x) || (xxx.can_be_fucked(x) && x.health.hediffSet.HasHediff(HediffDefOf.SexFrenzy))) &&
!x.Suspended && !x.IsForbidden(pawn) && x.jobs.curJob.def.defName != "GettinRaped" && x.jobs.curJob.def.defName != "RandomRape" && !x.Suspended && !x.IsForbidden(pawn) && x.jobs.curJob.def.defName != "GettinRaped" && x.jobs.curJob.def.defName != "RandomRape" &&
IntVec3Utility.DistanceTo(pawn.Position, x.Position) < 15 && pawn.CanReserveAndReach(x, PathEndMode.Touch, Danger.Deadly, 1, 0, null, false) IntVec3Utility.DistanceTo(pawn.Position, x.Position) < 15 && pawn.CanReserveAndReach(x, PathEndMode.Touch, Danger.Deadly, 1, 0, null, false) && SexAppraiser.would_fuck(pawn, x, false, true, false) > 0f
select x; select x;
if (source != null) if (source != null)
{ {

View file

@ -0,0 +1 @@
a5ab93a622659cbd8dd55dafbd7ec218b2635267

View file

@ -11,3 +11,7 @@ C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\1.4\
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.AssemblyReference.cache C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.AssemblyReference.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.CoreCompileInputs.cache C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.CoreCompileInputs.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.dll C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Assemblies\RJW_More_Genes.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.AssemblyReference.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.csproj.CoreCompileInputs.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\1.4\Source\RJW_More_Genes\obj\Debug\RJW_More_Genes.dll

Binary file not shown.

View file

@ -1,51 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<GeneDef>
<defName>rjw_genes_pussyhealer</defName>
<label>Pussy Healer</label>
<labelShortAdj>pussyhealer</labelShortAdj>
<description>Carriers of this gene are able use vaginal sex to tend to other's wounds.</description>
<iconPath>Things/Mote/Heart</iconPath>
<displayCategory>Ability</displayCategory>
<abilities>
<li>PussyHeal</li>
</abilities>
<descriptionHyperlinks>
<AbilityDef>PussyHeal</AbilityDef>
</descriptionHyperlinks>
<biostatMet>-1</biostatMet>
<minAgeActive>13</minAgeActive>
<symbolPack>
<suffixSymbols>
<li><symbol>life</symbol></li>
<li><symbol>clotter</symbol></li>
<li><symbol>tender</symbol></li>
</suffixSymbols>
</symbolPack>
</GeneDef>
<!--
<GeneDef>
<defName>rjw_genes_sexfrenzy</defName>
<label>Sex Frenzy</label>
<labelShortAdj>sexfrenzy</labelShortAdj>
<description>Carriers of this gene are able to induce a sexfrenzy nearby.</description>
<iconPath>Things/Mote/Heart</iconPath>
<displayCategory>Ability</displayCategory>
<abilities>
<li>SexFrenzy</li>
</abilities>
<descriptionHyperlinks>
<AbilityDef>SexFrenzy</AbilityDef>
</descriptionHyperlinks>
<biostatMet>-2</biostatMet>
<minAgeActive>13</minAgeActive>
<symbolPack>
<suffixSymbols>
<li><symbol>life</symbol></li>
<li><symbol>clotter</symbol></li>
<li><symbol>tender</symbol></li>
</suffixSymbols>
</symbolPack>
</GeneDef>
-->
</Defs>

View file

@ -1 +0,0 @@
ff6d574fef2eec5cfe1de89cd494c556f1cec83b

View file

@ -1,4 +0,0 @@
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.AssemblyReference.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWM_VPE.csproj.CoreCompileInputs.cache
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Mods\PsycastExpanded\Assemblies\RJWMoreGenes_VPE.dll
C:\Users\tyrob\OneDrive\Documenten\GitHub\RJW_More_Genes\RJW_More_Genes\1.4\Source\RJWM_VPE\obj\Debug\RJWMoreGenes_VPE.dll

View file

@ -1 +0,0 @@
12d5ecf6156bfd9b12520fa2c747ab2b3e89349c

View file

@ -18,3 +18,7 @@ V1.1.1
- 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
- Pawns affected by sexfrenzy only rape pawns who they are attracted to.
- Removed healpussy cooldown
- Fixed Mindbreak Lance