mirror of
https://gitgud.io/c0ffeeeeeeee/rimworld-animations.git
synced 2024-08-15 00:43:45 +00:00
Compare commits
4 commits
c0b0a9b993
...
bd30363a1e
Author | SHA1 | Date | |
---|---|---|---|
|
bd30363a1e | ||
|
eb7fe1a280 | ||
|
82d1e2f614 | ||
|
8888f76708 |
11 changed files with 6574 additions and 35 deletions
|
@ -504,14 +504,29 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
public bool LoopNeverending()
|
public bool LoopNeverending()
|
||||||
{
|
{
|
||||||
if(pawn?.jobs?.curDriver != null &&
|
return IsNeverEndingSex(pawn) || IsNeverEndingSexPartner(pawn);
|
||||||
(pawn.jobs.curDriver is JobDriver_Sex) && (pawn.jobs.curDriver as JobDriver_Sex).neverendingsex ||
|
}
|
||||||
(pawn.jobs.curDriver is JobDriver_SexBaseReciever) && (pawn.jobs.curDriver as JobDriver_Sex).Partner?.jobs?.curDriver != null && ((pawn.jobs.curDriver as JobDriver_Sex).Partner.jobs.curDriver as JobDriver_Sex).neverendingsex)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
public static bool IsNeverEndingSex(Pawn pawn)
|
||||||
|
{
|
||||||
|
bool hasDriver = pawn?.jobs?.curDriver != null;
|
||||||
|
if (!hasDriver)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return (pawn.jobs.curDriver is JobDriver_Sex jds) && jds.neverendingsex;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool IsNeverEndingSexPartner(Pawn pawn)
|
||||||
|
{
|
||||||
|
bool hasDriver = pawn?.jobs?.curDriver != null;
|
||||||
|
if (!hasDriver)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
var partner = (pawn.jobs.curDriver is JobDriver_SexBaseReciever jds) ? jds.Partner : null;
|
||||||
|
if (partner == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return IsNeverEndingSex(partner);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ResetOnLoop()
|
public void ResetOnLoop()
|
||||||
|
|
Binary file not shown.
1534
1.4/Defs/AnimationDefs/AggressiveDoggy.xml
Normal file
1534
1.4/Defs/AnimationDefs/AggressiveDoggy.xml
Normal file
File diff suppressed because it is too large
Load diff
1921
1.4/Defs/AnimationDefs/DoubleBlowjob.xml
Normal file
1921
1.4/Defs/AnimationDefs/DoubleBlowjob.xml
Normal file
File diff suppressed because it is too large
Load diff
686
1.4/Defs/AnimationDefs/FacingForwardFuck.xml
Normal file
686
1.4/Defs/AnimationDefs/FacingForwardFuck.xml
Normal file
|
@ -0,0 +1,686 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<Defs>
|
||||||
|
<Rimworld_Animations.AnimationDef>
|
||||||
|
<defName>FacingForwardFuck</defName>
|
||||||
|
<label>facing forward fuck</label>
|
||||||
|
<sounds>true</sounds>
|
||||||
|
<sexTypes>
|
||||||
|
<li>Vaginal</li>
|
||||||
|
<li>Anal</li>
|
||||||
|
<li>None</li>
|
||||||
|
</sexTypes>
|
||||||
|
<interactionDefTypes>
|
||||||
|
<li>Rape_Anal</li>
|
||||||
|
<li>Rape_Cunnilingus</li>
|
||||||
|
<li>Rape_Vaginal</li>
|
||||||
|
<li>Rape_Reverse_Anal</li>
|
||||||
|
<li>Rape_Reverse_Vaginal</li>
|
||||||
|
<li>Sex_Reverse_Anal</li>
|
||||||
|
<li>Sex_Reverse_Vaginal</li>
|
||||||
|
<li>Sex_Anal</li>
|
||||||
|
<li>Sex_Vaginal</li>
|
||||||
|
</interactionDefTypes>
|
||||||
|
<actors>
|
||||||
|
<li>
|
||||||
|
<defNames>
|
||||||
|
<li>Human</li>
|
||||||
|
</defNames>
|
||||||
|
<bodyTypeOffset>
|
||||||
|
<Male>(0, -0.05)</Male>
|
||||||
|
<Thin>(0, -0.05)</Thin>
|
||||||
|
<Hulk>(0.07, 0.15)</Hulk>
|
||||||
|
</bodyTypeOffset>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<defNames>
|
||||||
|
<li>Human</li>
|
||||||
|
</defNames>
|
||||||
|
<requiredGenitals>
|
||||||
|
<li>Penis</li>
|
||||||
|
</requiredGenitals>
|
||||||
|
<controlGenitalAngle>true</controlGenitalAngle>
|
||||||
|
<bodyTypeOffset>
|
||||||
|
<Female>(-0.03, 0.03)</Female>
|
||||||
|
<Hulk>(-0.05, 0.2)</Hulk>
|
||||||
|
<Fat>(-0.02, 0.05)</Fat>
|
||||||
|
</bodyTypeOffset>
|
||||||
|
</li>
|
||||||
|
</actors>
|
||||||
|
<animationStages>
|
||||||
|
<li>
|
||||||
|
<stageName>SlowFuck</stageName>
|
||||||
|
<playTimeTicks>500</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>300</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>63</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.09562898</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>36</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>63</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>36</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>FemaleFaceForward</stageName>
|
||||||
|
<playTimeTicks>200</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>100</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.393279</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>64</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>7.09635925</headAngle>
|
||||||
|
<headBob>-0.06650379</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>35</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.393279</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>64</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>35</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>HipMovement</stageName>
|
||||||
|
<playTimeTicks>300</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>200</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.393279</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>55</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>7.09635925</headAngle>
|
||||||
|
<headBob>-0.06650379</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>20</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>20.0933418</bodyAngle>
|
||||||
|
<headAngle>7.5340724</headAngle>
|
||||||
|
<headBob>-0.0468387455</headBob>
|
||||||
|
<bodyOffsetX>0.299985439</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.210036</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>24</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.393279</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>55</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>20</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.047</headBob>
|
||||||
|
<bodyOffsetX>-0.021</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.047</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>5</genitalAngle>
|
||||||
|
<tickDuration>24</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>MediumFuck</stageName>
|
||||||
|
<playTimeTicks>560</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>280</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>39</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.09562898</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>30</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>39</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>30</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>FastFuckFaceForward</stageName>
|
||||||
|
<playTimeTicks>360</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>270</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.393279</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>14</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>7.09635925</headAngle>
|
||||||
|
<headBob>-0.06650379</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>15</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>8.489082</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>2</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>14</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>15</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>FastFuck</stageName>
|
||||||
|
<playTimeTicks>144</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>72</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>8</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.09562898</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>9</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>8</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>9</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<stageName>Orgasm</stageName>
|
||||||
|
<playTimeTicks>300</playTimeTicks>
|
||||||
|
<playTimeTicksQuick>400</playTimeTicksQuick>
|
||||||
|
<isLooping>true</isLooping>
|
||||||
|
<animationClips>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>Pawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<quiver>true</quiver>
|
||||||
|
<tickDuration>66</tickDuration>
|
||||||
|
<soundEffect>Cum</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>0.0103825331</headBob>
|
||||||
|
<bodyOffsetX>0.251721561</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.1278264</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>16</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>14.6821575</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.09562898</headBob>
|
||||||
|
<bodyOffsetX>0.3166983</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.241406</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>17</tickDuration>
|
||||||
|
<soundEffect>Slimy</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>16.6431561</bodyAngle>
|
||||||
|
<headAngle>0.9831765</headAngle>
|
||||||
|
<headBob>-0.0039331913</headBob>
|
||||||
|
<bodyOffsetX>0.263521016</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.141592383</bodyOffsetZ>
|
||||||
|
<headFacing>3</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
<soundEffect>None</soundEffect>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
<li Class="Rimworld_Animations.PawnAnimationClip">
|
||||||
|
<layer>LayingPawn</layer>
|
||||||
|
<keyframes>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>66</tickDuration>
|
||||||
|
<soundEffect>Fuck</soundEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.0120656937</headBob>
|
||||||
|
<bodyOffsetX>-0.0200668052</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.0886991248</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>16</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.058226347</headBob>
|
||||||
|
<bodyOffsetX>-0.0200669244</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.036534965</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>15</genitalAngle>
|
||||||
|
<tickDuration>17</tickDuration>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<bodyAngle>-19.129</bodyAngle>
|
||||||
|
<headAngle>-14.649</headAngle>
|
||||||
|
<headBob>0.022</headBob>
|
||||||
|
<bodyOffsetX>-0.024</bodyOffsetX>
|
||||||
|
<bodyOffsetZ>0.071</bodyOffsetZ>
|
||||||
|
<headFacing>1</headFacing>
|
||||||
|
<bodyFacing>2</bodyFacing>
|
||||||
|
<genitalAngle>10</genitalAngle>
|
||||||
|
<tickDuration>1</tickDuration>
|
||||||
|
</li>
|
||||||
|
</keyframes>
|
||||||
|
</li>
|
||||||
|
</animationClips>
|
||||||
|
</li>
|
||||||
|
</animationStages>
|
||||||
|
</Rimworld_Animations.AnimationDef>
|
||||||
|
</Defs>
|
1086
1.4/Defs/AnimationDefs/LezThreesome.xml
Normal file
1086
1.4/Defs/AnimationDefs/LezThreesome.xml
Normal file
File diff suppressed because it is too large
Load diff
1283
1.4/Defs/AnimationDefs/SidewaysBJ.xml
Normal file
1283
1.4/Defs/AnimationDefs/SidewaysBJ.xml
Normal file
File diff suppressed because it is too large
Load diff
|
@ -22,16 +22,10 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
InteractionWithExtension interaction = InteractionHelper.GetWithExtension(sexProps.dictionaryKey);
|
InteractionWithExtension interaction = InteractionHelper.GetWithExtension(sexProps.dictionaryKey);
|
||||||
|
|
||||||
|
|
||||||
if(interaction.HasInteractionTag(InteractionTag.Reverse))
|
|
||||||
{
|
|
||||||
Pawn buffer = participants[1];
|
|
||||||
participants[1] = participants[0];
|
|
||||||
participants[0] = buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
participants =
|
participants =
|
||||||
participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator)
|
participants.OrderBy(p =>
|
||||||
|
p.jobs.curDriver is rjw.JobDriver_Sex
|
||||||
|
&& !(p.jobs.curDriver as rjw.JobDriver_Sex).Sexprops.isReceiver)
|
||||||
.OrderBy(p => rjw.xxx.can_fuck(p))
|
.OrderBy(p => rjw.xxx.can_fuck(p))
|
||||||
.ToList();
|
.ToList();
|
||||||
|
|
||||||
|
@ -42,31 +36,36 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
|
|
||||||
if (x.actors.Count != localParticipants.Count) {
|
if (x.actors.Count != localParticipants.Count) {
|
||||||
|
Log.Message(x.defName.ToStringSafe() + " not selected -- doesn't match count");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
for (int i = 0; i < x.actors.Count; i++) {
|
for (int i = 0; i < x.actors.Count; i++) {
|
||||||
|
|
||||||
if (rjw.RJWPreferenceSettings.Malesex == rjw.RJWPreferenceSettings.AllowedSex.Nohomo) {
|
if (rjw.RJWPreferenceSettings.Malesex == rjw.RJWPreferenceSettings.AllowedSex.Nohomo) {
|
||||||
if (rjw.xxx.is_male(localParticipants[i]) && x.actors[i].isFucked) {
|
if (rjw.xxx.is_male(localParticipants[i]) && x.actors[i].isFucked) {
|
||||||
|
|
||||||
|
if (AnimationSettings.debugMode)
|
||||||
|
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " is fucked, shouldn't be due to homo rules");
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (x.actors[i].requiredGender != null && !x.actors[i].requiredGender.Contains(localParticipants[i].gender.ToStringSafe<Gender>()))
|
if (x.actors[i].requiredGender != null && !x.actors[i].requiredGender.Contains(localParticipants[i].gender.ToStringSafe<Gender>()))
|
||||||
{
|
{
|
||||||
if (AnimationSettings.debugMode)
|
if (AnimationSettings.debugMode)
|
||||||
{
|
{
|
||||||
Log.Message(string.Concat(new string[]
|
Log.Message(string.Concat(new string[]
|
||||||
{
|
{
|
||||||
x.defName.ToStringSafe<string>(),
|
x.defName.ToStringSafe<string>(),
|
||||||
" not selected -- ",
|
" not selected -- ",
|
||||||
localParticipants[i].def.defName.ToStringSafe<string>(),
|
localParticipants[i].def.defName.ToStringSafe<string>(),
|
||||||
" ",
|
" ",
|
||||||
localParticipants[i].Name.ToStringSafe<Name>(),
|
localParticipants[i].Name.ToStringSafe<Name>(),
|
||||||
" does not match required gender"
|
" does not match required gender"
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((x.actors[i].blacklistedRaces != null) && x.actors[i].blacklistedRaces.Contains(localParticipants[i].def.defName)) {
|
if ((x.actors[i].blacklistedRaces != null) && x.actors[i].blacklistedRaces.Contains(localParticipants[i].def.defName)) {
|
||||||
if(AnimationSettings.debugMode)
|
if(AnimationSettings.debugMode)
|
||||||
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " is blacklisted");
|
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " is blacklisted");
|
||||||
|
@ -101,7 +100,8 @@ namespace Rimworld_Animations {
|
||||||
//genitals checking
|
//genitals checking
|
||||||
|
|
||||||
if(!GenitalCheckForPawn(x.actors[i].requiredGenitals, localParticipants[i], out string failReason)) {
|
if(!GenitalCheckForPawn(x.actors[i].requiredGenitals, localParticipants[i], out string failReason)) {
|
||||||
Debug.Log("Didn't select " + x.defName + ", " + localParticipants[i].Name + " " + failReason);
|
if (AnimationSettings.debugMode)
|
||||||
|
Log.Message("Didn't select " + x.defName + ", " + localParticipants[i].Name + " " + failReason);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -124,8 +124,13 @@ namespace Rimworld_Animations {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (AnimationSettings.debugMode)
|
||||||
|
Log.Message(x.defName.ToStringSafe() + " selected");
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
|
|
||||||
List<AnimationDef> optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.sexType.ToStringSafe()));
|
List<AnimationDef> optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.sexType.ToStringSafe()));
|
||||||
if (optionsWithInteractionType.Any()) {
|
if (optionsWithInteractionType.Any()) {
|
||||||
if (AnimationSettings.debugMode)
|
if (AnimationSettings.debugMode)
|
||||||
|
|
Binary file not shown.
|
@ -108,7 +108,16 @@ namespace Rimworld_Animations {
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Quaternion addonRotation = Quaternion.AngleAxis(pawnAnimator.bodyAngle, Vector3.up);
|
Quaternion addonRotation;
|
||||||
|
if (AnimationSettings.controlGenitalRotation && ba.path.ToLower().Contains("penis"))
|
||||||
|
{
|
||||||
|
addonRotation = Quaternion.AngleAxis(pawnAnimator.genitalAngle, Vector3.up);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
addonRotation = Quaternion.AngleAxis(pawnAnimator.bodyAngle, Vector3.up);
|
||||||
|
}
|
||||||
|
|
||||||
if (AnimationSettings.controlGenitalRotation && pawnAnimator.controlGenitalAngle && ba?.hediffGraphics != null && ba.hediffGraphics.Count != 0 && ba.hediffGraphics[0]?.path != null && (ba.hediffGraphics[0].path.Contains("Penis") || ba.hediffGraphics[0].path.Contains("penis")))
|
if (AnimationSettings.controlGenitalRotation && pawnAnimator.controlGenitalAngle && ba?.hediffGraphics != null && ba.hediffGraphics.Count != 0 && ba.hediffGraphics[0]?.path != null && (ba.hediffGraphics[0].path.Contains("Penis") || ba.hediffGraphics[0].path.Contains("penis")))
|
||||||
{
|
{
|
||||||
GenDraw.DrawMeshNowOrLater(mesh: addonGraphic.MeshAt(rot: rotation), loc: vector + (ba.alignWithHead ? headOffset : Vector3.zero) + vector2.RotatedBy(angle: Mathf.Acos(f: Quaternion.Dot(a: Quaternion.identity, b: addonRotation)) * 2f * 57.29578f),
|
GenDraw.DrawMeshNowOrLater(mesh: addonGraphic.MeshAt(rot: rotation), loc: vector + (ba.alignWithHead ? headOffset : Vector3.zero) + vector2.RotatedBy(angle: Mathf.Acos(f: Quaternion.Dot(a: Quaternion.identity, b: addonRotation)) * 2f * 57.29578f),
|
||||||
|
|
Binary file not shown.
Loading…
Reference in a new issue