New animation: Cowgirl

Better checks for initiators/aggressors
This commit is contained in:
Platinum 2020-04-20 12:01:31 -07:00
parent 5c775b6714
commit 2eaff0b8da
8 changed files with 620 additions and 8 deletions

View File

@ -21,6 +21,7 @@
<li>Wolf_Arctic</li>
</defNames>
<isFucking>true</isFucking>
<initiator>true</initiator>
</li>
</actors>

View File

@ -13,6 +13,7 @@
<li>Human</li>
</defNames>
<isFucked>true</isFucked>
<initiator>true</initiator>
<requiredGenitals>
<li>Vagina</li>
</requiredGenitals>

View File

@ -19,12 +19,14 @@
<li>Human</li>
</defNames>
<isFucking>true</isFucking>
<initiator>true</initiator>
</li>
<li>
<defNames>
<li>Human</li>
</defNames>
<isFucking>true</isFucking>
<initiator>true</initiator>
</li>
</actors>

View File

@ -22,6 +22,7 @@
<li>Human</li>
</defNames>
<isFucking>true</isFucking>
<initiator>true</initiator>
</li>
</actors>
@ -463,12 +464,14 @@
<defNames>
<li>Human</li>
</defNames>
<initiator>true</initiator>
</li>
<li>
<defNames>
<li>Human</li>
</defNames>
<isFucking>true</isFucking>
<initiator>true</initiator>
</li>
</actors>
<animationStages>
@ -852,7 +855,7 @@
</Rimworld_Animations.AnimationDef>
<Rimworld_Animations.AnimationDef>
<defName>ReverseStandAndCarry</defName>
<label>ReverseStandAndCarry</label>
<label>reverse stand-and-carry</label>
<sounds>true</sounds>
<sexTypes>
<li>Anal</li>
@ -870,6 +873,7 @@
<defNames>
<li>Human</li>
</defNames>
<initiator>true</initiator>
<isFucking>true</isFucking>
</li>
</actors>
@ -1950,6 +1954,574 @@
</animationStages>
</Rimworld_Animations.AnimationDef>
<Rimworld_Animations.AnimationDef>
<defName>Cowgirl</defName>
<label>cowgirl</label>
<sounds>true</sounds>
<sexTypes>
<li>Anal</li>
<li>Vaginal</li>
</sexTypes>
<actors>
<li>
<!--each type cooresponds to an animation clip in each animationStage-->
<defNames>
<li>Human</li>
</defNames>
<isFucked>true</isFucked>
<initiator>true</initiator>
</li>
<li>
<defNames>
<li>Human</li>
</defNames>
<isFucking>true</isFucking>
</li>
</actors>
<animationStages>
<li>
<stageName>Slow_Fuck</stageName>
<isLooping>true</isLooping>
<playTimeTicks>1340</playTimeTicks>
<stageIndex>0</stageIndex>
<animationClips>
<li Class="Rimworld_Animations.PawnAnimationClip">
<keyframes>
<!--Turning hips-->
<li>
<tickDuration>16</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>17</tickDuration>
<bodyAngle>3.5</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>-0.03</bodyOffsetX>
<bodyOffsetZ>0.624</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.02</headBob>
</li>
<li>
<tickDuration>16</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>17</tickDuration>
<bodyAngle>-3.5</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0.03</bodyOffsetX>
<bodyOffsetZ>0.624</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.02</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>16</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>17</tickDuration>
<bodyAngle>3.5</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>-0.03</bodyOffsetX>
<bodyOffsetZ>0.624</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.02</headBob>
</li>
<li>
<tickDuration>16</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>17</tickDuration>
<bodyAngle>-3.5</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0.03</bodyOffsetX>
<bodyOffsetZ>0.624</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.02</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<!--Straight up and down-->
<li>
<tickDuration>33</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>33</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>33</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>33</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
<li Class="Rimworld_Animations.PawnAnimationClip">
<layer>LayingPawn</layer>
<keyframes>
<li>
<tickDuration>33</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>33</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.213</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0.045</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
</animationClips>
</li>
<li>
<stageName>Fast_Fuck</stageName>
<isLooping>true</isLooping>
<playTimeTicks>780</playTimeTicks>
<stageIndex>0</stageIndex>
<animationClips>
<li Class="Rimworld_Animations.PawnAnimationClip">
<keyframes>
<li>
<tickDuration>13</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>13</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
<li Class="Rimworld_Animations.PawnAnimationClip">
<layer>LayingPawn</layer>
<keyframes>
<li>
<tickDuration>13</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>13</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.213</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0.045</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
</animationClips>
</li>
<li>
<stageName>Cum</stageName>
<isLooping>true</isLooping>
<playTimeTicks>594</playTimeTicks>
<stageIndex>0</stageIndex>
<animationClips>
<li Class="Rimworld_Animations.PawnAnimationClip">
<keyframes>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<soundEffect>Fuck</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.694</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>-0.03</headBob>
</li>
<li>
<tickDuration>45</tickDuration>
<soundEffect>Cum</soundEffect>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>40</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.534</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>0</bodyAngle>
<headAngle>0</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>0.554</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
<li Class="Rimworld_Animations.PawnAnimationClip">
<layer>LayingPawn</layer>
<keyframes>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.213</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0.045</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.213</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0.045</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>10</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.213</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0.045</headBob>
</li>
<li>
<tickDuration>45</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>40</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
<li>
<tickDuration>1</tickDuration>
<bodyAngle>180</bodyAngle>
<headAngle>180</headAngle>
<bodyOffsetX>0</bodyOffsetX>
<bodyOffsetZ>-0.263</bodyOffsetZ>
<bodyFacing>2</bodyFacing>
<headFacing>2</headFacing>
<headBob>0</headBob>
</li>
</keyframes>
</li>
</animationClips>
</li>
</animationStages>
</Rimworld_Animations.AnimationDef>
</Defs>

View File

@ -10,7 +10,7 @@ namespace Rimworld_Animations {
public List<string> defNames;
public List<string> requiredGenitals;
public List<AlienRaceOffset> raceOffsets;
public bool activeRole = false;
public bool initiator = false;
public string gender;
public bool isFucking = false;
public bool isFucked = false;

View File

@ -46,10 +46,11 @@ namespace Rimworld_Animations {
if (!x.actors[i].defNames.Contains(localParticipants[i].def.defName)) {
if (rjw.RJWSettings.DevMode) {
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " is not ");
string animInfo = x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " is not ";
foreach(String defname in x.actors[i].defNames) {
Log.Message(defname + ", ");
animInfo += defname + ", ";
}
Log.Message(animInfo);
}
return false;
@ -67,9 +68,10 @@ namespace Rimworld_Animations {
//TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH
/*
if (x.defName != "ReverseStandAndCarry")
if (x.defName != "Cowgirl")
return false;
*/
*/
if (x.actors[i].isFucking && !rjw.xxx.can_fuck(localParticipants[i])) {
Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " can't fuck");
@ -83,19 +85,51 @@ namespace Rimworld_Animations {
}
return true;
});
List<AnimationDef> optionsWithSexType = options.ToList().FindAll(x => x.sexTypes.Contains(sexType));
List<AnimationDef> optionsWithSexTypeAndInitiator = optionsWithSexType.FindAll(x => {
bool initiatorsAlignWithSexType = true;
for (int i = 0; i < x.actors.Count; i++) {
//if the animation not for initiators, but an initiator is playing it
if (x.actors[i].initiator && !(localParticipants[i].jobs.curDriver is rjw.JobDriver_SexBaseInitiator)) {
initiatorsAlignWithSexType = false;
}
}
return initiatorsAlignWithSexType;
});
List<AnimationDef> optionsWithInitiator = options.ToList().FindAll(x => {
bool initiatorsAlignWithSexType = true;
for (int i = 0; i < x.actors.Count; i++) {
//if the animation not for initiators, but an initiator is playing it
if (x.actors[i].initiator && !(localParticipants[i].jobs.curDriver is rjw.JobDriver_SexBaseInitiator)) {
initiatorsAlignWithSexType = false;
}
}
return initiatorsAlignWithSexType;
});
if (optionsWithSexTypeAndInitiator.Any()) {
Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + " and initiators...");
return optionsWithSexType.RandomElement();
}
if (optionsWithSexType.Any()) {
Log.Message("Selecting animation for rjwSexType " + sexType.ToStringSafe() + "...");
return optionsWithSexType.RandomElement();
}
if(optionsWithInitiator.Any()) {
Log.Message("Selecting animation for initiators...");
}
if (options != null && options.Any()) {
Log.Message("Randomly selecting animation...");
return options.RandomElement();
}
else
return null;
}

View File

@ -41,6 +41,8 @@ namespace Rimworld_Animations {
}
else if (__instance is JobDriver_Masturbate_Bed)
bed = (__instance as JobDriver_Masturbate_Bed).Bed;
else if (__instance is JobDriver_RapeComfortPawn || __instance is JobDriver_Breeding)
bed = (__instance?.Partner?.jobs?.curDriver as JobDriver_Sex)?.pBed;
if ((__instance.Target as Pawn)?.jobs?.curDriver is JobDriver_SexBaseReciever) {