From 21de5442e9f4f1f93bb53463b40ad3b87516cb22 Mon Sep 17 00:00:00 2001 From: Platinum Date: Mon, 1 Jun 2020 18:13:46 -0700 Subject: [PATCH 01/19] more defs added to anim --- Defs/AnimationDefs/Animations_Beast.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Defs/AnimationDefs/Animations_Beast.xml b/Defs/AnimationDefs/Animations_Beast.xml index 73365cc..339e696 100644 --- a/Defs/AnimationDefs/Animations_Beast.xml +++ b/Defs/AnimationDefs/Animations_Beast.xml @@ -20,7 +20,9 @@
  • Wolf_Timber
  • Wolf_Arctic
  • Whitefox
  • - +
  • Warg
  • +
  • Husky
  • +
  • LabradorRetriever
  • AEXP_WelshTerrier
  • AEXP_Rottweiler
  • From 6ebd5215193317ca60b797b5ff59da29e8468ce1 Mon Sep 17 00:00:00 2001 From: Platinum Date: Mon, 1 Jun 2020 22:58:18 -0700 Subject: [PATCH 02/19] thread check --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/Animations_Vanilla2.xml | 142 +++++++++++++++++++++ Rimworld-Animations.csproj | 1 + Source/AnimationUtility.cs | 4 +- Source/Comps/CompBodyAnimator.cs | 4 +- 5 files changed, 147 insertions(+), 4 deletions(-) create mode 100644 Defs/AnimationDefs/Animations_Vanilla2.xml diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 9b2a820cc2f8eb30f9b0b76abee0c0a7b349271f..488169a3ac02319b4085b44029e23f89e3e84349 100644 GIT binary patch delta 172 zcmZoz!Q8Ndc|r$^NQCsMjXkb>n{V(e{A+~ox}Cv45*XEWC`Ha4)B9C%87^Y0^Zj7a>+ZO3$xxetz+AaOT49(PAk Wz4e4QlJsQVlfFpY&C5?lasdF!Pdh&V delta 175 zcmZoz!Q8Ndc|r$EglNO+jXkb>>`dYsq6`ddn=kMcvTpVi2~B5_k-d?zc~SK`O97dQ ziJz0%d3}04dknSJBVTS#*qX=BW~66iW??cp@Ra)I-$&vYk@%C_j_D$E9~?75;%;_4 Z?vA2*>j`fp>B+h$eUZ4Em!FK}0sxcSJhA`) diff --git a/Defs/AnimationDefs/Animations_Vanilla2.xml b/Defs/AnimationDefs/Animations_Vanilla2.xml new file mode 100644 index 0000000..ae7dc9b --- /dev/null +++ b/Defs/AnimationDefs/Animations_Vanilla2.xml @@ -0,0 +1,142 @@ + + + + + + diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index a63d0aa..f14d4bf 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -114,6 +114,7 @@ + diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 1c758de..a89c310 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -78,10 +78,10 @@ namespace Rimworld_Animations { //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH /* - if (x.defName != "Doggystyle") + if (x.defName != "Missionary") 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"); diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index fb84d77..3de585c 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -102,8 +102,6 @@ namespace Rimworld_Animations { } public void StartAnimation(AnimationDef anim, int actor, bool mirror = false, bool shiver = false, bool fastAnimForQuickie = false) { - isAnimating = true; - AlienRaceOffset raceOffset = anim?.actors[actor]?.raceOffsets?.Find(x => x.defName == pawn.def.defName); if (raceOffset != null) { @@ -154,6 +152,8 @@ namespace Rimworld_Animations { //tick once for initialization tickAnim(); + isAnimating = true; + } public override void CompTick() { From 4adc4a69060314d8ff1ba6693f5cef771b32feca Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 2 Jun 2020 13:20:38 -0700 Subject: [PATCH 03/19] tweaks to handling of animation context --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/AnimationDefs.rar | Bin 0 -> 6592 bytes Defs/AnimationDefs/Animations_vanilla.xml | 555 +++++++++++----------- Source/AnimationUtility.cs | 19 +- Source/Comps/CompBodyAnimator.cs | 8 + Source/Patches/HarmonyPatch_AlienRace.cs | 6 +- 6 files changed, 301 insertions(+), 287 deletions(-) create mode 100644 Defs/AnimationDefs/AnimationDefs.rar diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 488169a3ac02319b4085b44029e23f89e3e84349..6360d1144a02108a73a710e69b6b625064789529 100644 GIT binary patch literal 54272 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 Q%I7~iicjwR_>RDT0jerpoB#j- diff --git a/Defs/AnimationDefs/AnimationDefs.rar b/Defs/AnimationDefs/AnimationDefs.rar new file mode 100644 index 0000000000000000000000000000000000000000..e7bf2a1b2a710124b0ff6a11c37fecffb1153d8f GIT binary patch literal 6592 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 LUD6LAjRp7*a+`%v literal 0 HcmV?d00001 diff --git a/Defs/AnimationDefs/Animations_vanilla.xml b/Defs/AnimationDefs/Animations_vanilla.xml index f8e5e1c..f2b94cb 100644 --- a/Defs/AnimationDefs/Animations_vanilla.xml +++ b/Defs/AnimationDefs/Animations_vanilla.xml @@ -463,15 +463,6 @@
  • Oral
  • -
  • - - -
  • Human
  • - - - (0, -0.2) - -
  • Human
  • @@ -483,6 +474,15 @@ (0, 0.2) +
  • + + +
  • Human
  • + + + (0, -0.2) + +
  • @@ -491,6 +491,42 @@ 1140 0 +
  • + LayingPawn + +
  • + 35 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • +
  • + 59 + 0 + 0 + 0.490 + 2 + 2 + -0.003 +
  • +
  • + 1 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • + +
  • @@ -620,120 +656,7 @@
  • -
  • - LayingPawn - -
  • - 35 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • -
  • - 59 - 0 - 0 - 0.490 - 2 - 2 - -0.003 -
  • -
  • - 1 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • - - - - -
  • - Face_Fuck - true - 300 - 0 - -
  • - -
  • - 15 - 0 - 0 - 0 - -0.255 - 0 - 0 - 0 -
  • -
  • - Suck - 14 - 0 - 0 - -0.270 - 0 - 0 - -0.06 -
  • -
  • - 1 - 0 - 0 - 0 - -0.255 - 0 - 0 - 0 -
  • - - -
  • - LayingPawn - -
  • - 15 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • -
  • - 14 - 0 - 0 - 0.575 - 2 - 2 - -0.051 -
  • -
  • - 1 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • - - +
  • @@ -870,6 +793,85 @@
  • +
  • + Face_Fuck + true + 300 + 0 + +
  • + +
  • + 15 + 0 + 0 + 0 + -0.255 + 0 + 0 + 0 +
  • +
  • + Suck + 14 + 0 + 0 + -0.270 + 0 + 0 + -0.06 +
  • +
  • + 1 + 0 + 0 + 0 + -0.255 + 0 + 0 + 0 +
  • + + +
  • + LayingPawn + +
  • + 15 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • +
  • + 14 + 0 + 0 + 0.575 + 2 + 2 + -0.051 +
  • +
  • + 1 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • + + + + +
    @@ -1991,6 +1993,16 @@ +
  • + +
  • Human
  • + + true + true + + (0, -0.2) + +
  • @@ -2004,17 +2016,6 @@
  • -
  • - -
  • Human
  • - - true - true - - (0, -0.2) - - -
    @@ -2024,6 +2025,45 @@ 1340 0 + +
  • + LayingPawn + +
  • + 33 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 + 0 +
  • +
  • + 33 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 + 0 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 + 0 +
  • + +
  • @@ -2196,12 +2236,21 @@ 0
  • - + + +
    + +
  • + Fast_Fuck + true + 780 + 0 +
  • LayingPawn
  • - 33 + 13 180 180 0 @@ -2212,7 +2261,7 @@ 0
  • - 33 + 13 180 180 0 @@ -2235,14 +2284,6 @@
  • - - -
  • - Fast_Fuck - true - 780 - 0 -
  • @@ -2278,11 +2319,21 @@
  • + + + +
  • + Cum + true + 594 + 0 + +
  • LayingPawn
  • - 13 + 10 180 180 0 @@ -2293,7 +2344,7 @@ 0
  • - 13 + 10 180 180 0 @@ -2301,7 +2352,88 @@ 2 2 0.045 - 0 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • + +
  • + 10 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 10 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • + +
  • + 10 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 10 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 +
  • +
  • + 45 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 40 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0
  • 1 @@ -2316,14 +2448,6 @@
  • - - -
  • - Cum - true - 594 - 0 -
  • @@ -2445,125 +2569,6 @@
  • -
  • - LayingPawn - -
  • - 10 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 - 0 -
  • -
  • - 10 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • - -
  • - 10 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 10 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • - -
  • - 10 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 10 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 -
  • -
  • - 45 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 40 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 - 0 -
  • - -
    diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index a89c310..44edde4 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -19,23 +19,26 @@ namespace Rimworld_Animations { //aggressors last participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator).ToList(); - //fucked first, fucking second - participants = participants.OrderBy(p => rjw.xxx.can_fuck(p)).ToList(); - - if(rjw.RJWPreferenceSettings.Malesex == rjw.RJWPreferenceSettings.AllowedSex.Nohomo) { - participants = participants.OrderBy(x => rjw.xxx.is_male(x)).ToList(); - } - + //animal anims don't matter who is initiator + participants = participants.OrderBy(p => rjw.xxx.is_animal(p)).ToList(); List localParticipants = new List(participants); IEnumerable options = DefDatabase.AllDefs.Where((AnimationDef x) => { + + if (x.actors.Count != localParticipants.Count) { return false; } for (int i = 0; i < x.actors.Count; i++) { - if((x.actors[i].blacklistedRaces != null) && x.actors[i].blacklistedRaces.Contains(localParticipants[i].def.defName)) { + if (rjw.RJWPreferenceSettings.Malesex == rjw.RJWPreferenceSettings.AllowedSex.Nohomo) { + if (rjw.xxx.is_male(localParticipants[i]) && x.actors[i].isFucked) { + return false; + } + } + + if ((x.actors[i].blacklistedRaces != null) && x.actors[i].blacklistedRaces.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 blacklisted"); } diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index 3de585c..b9bfc0f 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -38,6 +38,8 @@ namespace Rimworld_Animations { private bool mirror = false, quiver = false, shiver = false; private int actor; + private int lastDrawFrame = -1; + private int animTicks = 0, stageTicks = 0, clipTicks = 0; private int curStage = 0; private float clipPercent = 0; @@ -259,6 +261,10 @@ namespace Rimworld_Animations { public void calculateDrawValues() { + if(Find.TickManager.TickRateMultiplier > 1 && (lastDrawFrame + 1 >= RealTime.frameCount || RealTime.deltaTime < 0.05f)) { + return; + } + deltaPos = new Vector3(clip.BodyOffsetX.Evaluate(clipPercent) * (mirror ? -1 : 1), clip.layer.AltitudeFor(), clip.BodyOffsetZ.Evaluate(clipPercent)); if (AnimationSettings.offsets != null && AnimationSettings.offsets.ContainsKey(CurrentAnimation.defName + pawn.def.defName + ActorIndex)) { @@ -307,6 +313,8 @@ namespace Rimworld_Animations { } headBob = new Vector3(0, 0, clip.HeadBob.Evaluate(clipPercent)); + lastDrawFrame = RealTime.frameCount; + } public Vector3 getPawnHeadPosition() { diff --git a/Source/Patches/HarmonyPatch_AlienRace.cs b/Source/Patches/HarmonyPatch_AlienRace.cs index 55a0bde..80198b6 100644 --- a/Source/Patches/HarmonyPatch_AlienRace.cs +++ b/Source/Patches/HarmonyPatch_AlienRace.cs @@ -77,10 +77,8 @@ namespace Rimworld_Animations { - Vector2 bodyOffset = (portrait ? offset?.portraitBodyTypes ?? offset?.bodyTypes : offset?.bodyTypes)?.FirstOrDefault(predicate: to => to.bodyType == pawn.story.bodyType) - ?.offset ?? Vector2.zero; - Vector2 crownOffset = (portrait ? offset?.portraitCrownTypes ?? offset?.crownTypes : offset?.crownTypes)?.FirstOrDefault(predicate: to => to.crownType == alienComp.crownType) - ?.offset ?? Vector2.zero; + Vector2 bodyOffset = ((!portrait) ? offset?.bodyTypes : (offset?.portraitBodyTypes ?? offset?.bodyTypes))?.FirstOrDefault((AlienPartGenerator.BodyTypeOffset to) => to.bodyType == pawn.story.bodyType)?.offset ?? Vector2.zero; + Vector2 crownOffset = ((!portrait) ? offset?.crownTypes : (offset?.portraitCrownTypes ?? offset?.crownTypes))?.FirstOrDefault((AlienPartGenerator.CrownTypeOffset to) => to.crownType == alienComp.crownType)?.offset ?? Vector2.zero; //Defaults for tails //south 0.42f, -0.3f, -0.22f From 81fd210b9a48a0c59c8a4400da80193d685af055 Mon Sep 17 00:00:00 2001 From: Platinum Date: Thu, 4 Jun 2020 14:31:34 -0700 Subject: [PATCH 04/19] reverted to original method of finding animation --- Defs/AnimationDefs/Animations_Vanilla2.xml | 142 --------------------- Rimworld-Animations.csproj | 1 - Source/AnimationUtility.cs | 4 +- Source/Comps/CompBodyAnimator.cs | 4 +- 4 files changed, 4 insertions(+), 147 deletions(-) delete mode 100644 Defs/AnimationDefs/Animations_Vanilla2.xml diff --git a/Defs/AnimationDefs/Animations_Vanilla2.xml b/Defs/AnimationDefs/Animations_Vanilla2.xml deleted file mode 100644 index ae7dc9b..0000000 --- a/Defs/AnimationDefs/Animations_Vanilla2.xml +++ /dev/null @@ -1,142 +0,0 @@ - - - - - - diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index f14d4bf..a63d0aa 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -114,7 +114,6 @@ - diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 44edde4..fe8a68b 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -81,10 +81,10 @@ namespace Rimworld_Animations { //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH /* - if (x.defName != "Missionary") + if (x.defName != "Doggystyle") 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"); diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index b9bfc0f..1683c66 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -104,6 +104,8 @@ namespace Rimworld_Animations { } public void StartAnimation(AnimationDef anim, int actor, bool mirror = false, bool shiver = false, bool fastAnimForQuickie = false) { + isAnimating = true; + AlienRaceOffset raceOffset = anim?.actors[actor]?.raceOffsets?.Find(x => x.defName == pawn.def.defName); if (raceOffset != null) { @@ -154,8 +156,6 @@ namespace Rimworld_Animations { //tick once for initialization tickAnim(); - isAnimating = true; - } public override void CompTick() { From 2f046a797762d411a503e06abad76855077f08bd Mon Sep 17 00:00:00 2001 From: Platinum Date: Thu, 4 Jun 2020 14:31:41 -0700 Subject: [PATCH 05/19] build --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/Animations_vanilla.xml | 555 +++++++++++----------- Source/AnimationUtility.cs | 6 +- 3 files changed, 279 insertions(+), 282 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 6360d1144a02108a73a710e69b6b625064789529..41bc6324363d285862c91f00544fda653dbcddfa 100644 GIT binary patch delta 8435 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 delta 8416 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 W18X*aa8nfCdZ5|%(N)&eQ}=)8I4U~; diff --git a/Defs/AnimationDefs/Animations_vanilla.xml b/Defs/AnimationDefs/Animations_vanilla.xml index f2b94cb..f8e5e1c 100644 --- a/Defs/AnimationDefs/Animations_vanilla.xml +++ b/Defs/AnimationDefs/Animations_vanilla.xml @@ -463,6 +463,15 @@
  • Oral
  • +
  • + + +
  • Human
  • + + + (0, -0.2) + +
  • Human
  • @@ -474,15 +483,6 @@ (0, 0.2) -
  • - - -
  • Human
  • - - - (0, -0.2) - -
  • @@ -491,42 +491,6 @@ 1140 0 -
  • - LayingPawn - -
  • - 35 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • -
  • - 59 - 0 - 0 - 0.490 - 2 - 2 - -0.003 -
  • -
  • - 1 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • - -
  • @@ -656,7 +620,120 @@
  • - +
  • + LayingPawn + +
  • + 35 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • +
  • + 59 + 0 + 0 + 0.490 + 2 + 2 + -0.003 +
  • +
  • + 1 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • + + + + +
  • + Face_Fuck + true + 300 + 0 + +
  • + +
  • + 15 + 0 + 0 + 0 + -0.255 + 0 + 0 + 0 +
  • +
  • + Suck + 14 + 0 + 0 + -0.270 + 0 + 0 + -0.06 +
  • +
  • + 1 + 0 + 0 + 0 + -0.255 + 0 + 0 + 0 +
  • + + +
  • + LayingPawn + +
  • + 15 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • +
  • + 14 + 0 + 0 + 0.575 + 2 + 2 + -0.051 +
  • +
  • + 1 + 0 + 0 + 0 + 0.473 + 2 + 2 + 0 + 180 +
  • + +
  • @@ -793,85 +870,6 @@
  • -
  • - Face_Fuck - true - 300 - 0 - -
  • - -
  • - 15 - 0 - 0 - 0 - -0.255 - 0 - 0 - 0 -
  • -
  • - Suck - 14 - 0 - 0 - -0.270 - 0 - 0 - -0.06 -
  • -
  • - 1 - 0 - 0 - 0 - -0.255 - 0 - 0 - 0 -
  • - - -
  • - LayingPawn - -
  • - 15 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • -
  • - 14 - 0 - 0 - 0.575 - 2 - 2 - -0.051 -
  • -
  • - 1 - 0 - 0 - 0 - 0.473 - 2 - 2 - 0 - 180 -
  • - - - - -
    @@ -1993,16 +1991,6 @@ -
  • - -
  • Human
  • - - true - true - - (0, -0.2) - -
  • @@ -2016,6 +2004,17 @@
  • +
  • + +
  • Human
  • + + true + true + + (0, -0.2) + + +
    @@ -2025,45 +2024,6 @@ 1340 0 - -
  • - LayingPawn - -
  • - 33 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 - 0 -
  • -
  • - 33 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 - 0 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 - 0 -
  • - -
  • @@ -2236,21 +2196,12 @@ 0
  • - - -
    - -
  • - Fast_Fuck - true - 780 - 0 - +
  • LayingPawn
  • - 13 + 33 180 180 0 @@ -2261,7 +2212,7 @@ 0
  • - 13 + 33 180 180 0 @@ -2284,6 +2235,14 @@
  • + + +
  • + Fast_Fuck + true + 780 + 0 +
  • @@ -2319,21 +2278,11 @@
  • - - - -
  • - Cum - true - 594 - 0 - -
  • LayingPawn
  • - 10 + 13 180 180 0 @@ -2344,7 +2293,7 @@ 0
  • - 10 + 13 180 180 0 @@ -2352,88 +2301,7 @@ 2 2 0.045 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • - -
  • - 10 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 10 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 -
  • -
  • - 1 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • - -
  • - 10 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 10 - 180 - 180 - 0 - -0.313 - 2 - 2 - 0.045 -
  • -
  • - 45 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 -
  • -
  • - 40 - 180 - 180 - 0 - -0.363 - 2 - 2 - 0 + 0
  • 1 @@ -2448,6 +2316,14 @@
  • + + +
  • + Cum + true + 594 + 0 +
  • @@ -2569,6 +2445,125 @@
  • +
  • + LayingPawn + +
  • + 10 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 + 0 +
  • +
  • + 10 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • + +
  • + 10 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 10 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • + +
  • + 10 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 10 + 180 + 180 + 0 + -0.313 + 2 + 2 + 0.045 +
  • +
  • + 45 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 40 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 +
  • +
  • + 1 + 180 + 180 + 0 + -0.363 + 2 + 2 + 0 + 0 +
  • + +
    diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index fe8a68b..8b87040 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -19,8 +19,10 @@ namespace Rimworld_Animations { //aggressors last participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator).ToList(); - //animal anims don't matter who is initiator - participants = participants.OrderBy(p => rjw.xxx.is_animal(p)).ToList(); + //pawns that can fuck first + participants = participants.OrderBy(p => rjw.xxx.can_fuck(p)).ToList(); + + List localParticipants = new List(participants); IEnumerable options = DefDatabase.AllDefs.Where((AnimationDef x) => { From 7f9ee0104e8b47271d8c25e5ad63263f9f8bd618 Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 16 Jun 2020 19:35:14 -0700 Subject: [PATCH 06/19] updated for rjw 4.2.6 + fixed potential bug with speed >1x --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/Animations_Vanilla2.xml | 373 +++++++++++++++++++++ Defs/SoundDefs/Sounds_Sex.xml | 6 +- Rimworld-Animations.csproj | 1 + Source/AnimationUtility.cs | 8 +- Source/Comps/CompBodyAnimator.cs | 9 +- 6 files changed, 386 insertions(+), 11 deletions(-) create mode 100644 Defs/AnimationDefs/Animations_Vanilla2.xml diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 41bc6324363d285862c91f00544fda653dbcddfa..611df096f0c9fd160f2b71c2ec17b94489bc4d9c 100644 GIT binary patch delta 18421 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 delta 18448 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 + + + Missionary + + true + +
  • Vaginal
  • +
  • Anal
  • +
    + +
  • + + +
  • Human
  • + + true + + (0.1, 0.1) + + +
  • + +
  • Human
  • + + true + true + + (0, 0.2) + + +
    + + +
  • + Slow_Insert + false + 181 + 0 + +
  • + +
  • + 120 + -82.7437439 + -77.76135 + 0 + 0.00123929977 + -0.288235933 + 0 + 1 + 1 +
  • +
  • + 60 + -82.7437439 + -85.3898849 + 0 + 0.0254950486 + -0.30147323 + 0 + 1 + 1 +
  • +
  • + 1 + -82.7437439 + -77.78256 + 0 + 0.0254950486 + -0.30147323 + 0 + 1 + 1 +
  • + + +
  • + LayingPawn + +
  • + 120 + -8.415361 + -24.7466831 + 0 + 0.275328381 + 0.5114879 + 0 + 3 + 3 +
  • +
  • + 60 + 11.5036926 + -10.2523956 + 0 + 0.226816757 + 0.3989886 + 0 + 3 + 3 + Slimy +
  • +
  • + 1 + 3.36438 + -18.3917084 + 0 + 0.233432038 + 0.4034014 + 0 + 3 + 3 +
  • + + + + +
  • + Breathing + true + 182 + 0 + +
  • + +
  • + 45 + -82.7437439 + -77.78256 + 0 + 0.0254950486 + -0.30147323 + 0 + 1 + 1 +
  • +
  • + 45 + -82.7437439 + -77.78256 + 0 + 0.0254950486 + -0.33147323 + -0.03 + 1 + 1 +
  • +
  • + 1 + -82.7437439 + -77.78256 + 0 + 0.0254950486 + -0.30147323 + 0 + 1 + 1 +
  • + + +
  • + LayingPawn + +
  • + 45 + 3.36438 + -18.3917084 + 0 + 0.233432038 + 0.4034014 + 0 + 3 + 3 +
  • +
  • + 45 + 3.36438 + -18.3917084 + 0 + 0.273432038 + 0.4034014 + -0.03 + 3 + 3 +
  • +
  • + 1 + 3.36438 + -18.3917084 + 0 + 0.233432038 + 0.4034014 + 0 + 3 + 3 +
  • + + + + +
  • + Slow_Fuck_Start + true + + 0 + +
  • + +
  • + 60 + -82.7437439 + -77.78256 + 0 + 0.0254950486 + -0.30147323 + 0 + 1 + 1 +
  • +
  • + 1 + -82.7437439 + -72.1512451 + 0 + 0.025494989 + -0.29485938 + 0 + 1 + 1 +
  • + + +
  • + LayingPawn + +
  • + 60 + 3.36438 + -18.3917084 + 0 + 0.233432038 + 0.4034014 + 0 + 3 + 3 +
  • +
  • + 1 + -5.439103 + -18.591362 + 0 + 0.253895342 + 0.5181109 + 0 + 3 + 3 +
  • + + + + + + +
  • + Slow_Fuck + true + 1212 + 0 + +
  • + +
  • + 30 + -82.7437439 + -72.1512451 + 0 + 0.025494989 + -0.29485938 + 0 + 1 + 1 +
  • +
  • + 5 + -82.7437439 + -67.51352 + 0 + 0.025494989 + -0.279417485 + 0 + 1 + 1 +
  • +
  • + 60 + -82.7437439 + -67.51352 + 0 + 0.025494989 + -0.339417485 + 0 + 1 + 1 +
  • +
  • + 1 + -82.7437439 + -72.1512451 + 0 + 0.025494989 + -0.29485938 + 0 + 1 + 1 +
  • + + +
  • + LayingPawn + +
  • + 30 + -5.439103 + -18.591362 + 0 + 0.253895342 + 0.5181109 + 0 + 3 + 3 +
  • +
  • + 5 + 12.3350525 + -14.779211 + 0 + 0.2605105 + 0.449729085 + 0 + 3 + 3 + Fuck +
  • +
  • + 60 + 12.3350525 + -14.779211 + 0 + 0.2605105 + 0.389729085 + 0 + 3 + 3 +
  • +
  • + 1 + -5.439103 + -18.591362 + 0 + 0.253895342 + 0.5181109 + 0 + 3 + 3 +
  • + + + + +
    +
    +
    \ No newline at end of file diff --git a/Defs/SoundDefs/Sounds_Sex.xml b/Defs/SoundDefs/Sounds_Sex.xml index 574e2a1..7d3500c 100644 --- a/Defs/SoundDefs/Sounds_Sex.xml +++ b/Defs/SoundDefs/Sounds_Sex.xml @@ -188,8 +188,8 @@ - 15 - 25 + 45 + 75 1.4 @@ -197,7 +197,7 @@ 0 - 25 + 100 NeverTwice false diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index a63d0aa..f14d4bf 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -114,6 +114,7 @@ + diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 8b87040..38717f4 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -82,11 +82,11 @@ namespace Rimworld_Animations { } //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH - /* - if (x.defName != "Doggystyle") - return false; - */ + if (x.defName != "Missionary") + 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"); diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index 1683c66..b92bb0b 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -104,8 +104,6 @@ namespace Rimworld_Animations { } public void StartAnimation(AnimationDef anim, int actor, bool mirror = false, bool shiver = false, bool fastAnimForQuickie = false) { - isAnimating = true; - AlienRaceOffset raceOffset = anim?.actors[actor]?.raceOffsets?.Find(x => x.defName == pawn.def.defName); if (raceOffset != null) { @@ -153,9 +151,12 @@ namespace Rimworld_Animations { controlGenitalAngle = anim.actors[actor].controlGenitalAngle; + isAnimating = true; //tick once for initialization tickAnim(); + + } public override void CompTick() { @@ -261,9 +262,9 @@ namespace Rimworld_Animations { public void calculateDrawValues() { - if(Find.TickManager.TickRateMultiplier > 1 && (lastDrawFrame + 1 >= RealTime.frameCount || RealTime.deltaTime < 0.05f)) { + /*if(Find.TickManager.TickRateMultiplier > 1 && (lastDrawFrame + 1 >= RealTime.frameCount || RealTime.deltaTime < 0.05f)) { return; - } + }*/ deltaPos = new Vector3(clip.BodyOffsetX.Evaluate(clipPercent) * (mirror ? -1 : 1), clip.layer.AltitudeFor(), clip.BodyOffsetZ.Evaluate(clipPercent)); From 993f730191fc1ddb5b51898b6e99b801a9b38946 Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 16 Jun 2020 19:37:30 -0700 Subject: [PATCH 07/19] fixed potential bug with >1x speed + build for rjw 4.2.6 --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/Animations_Vanilla2.xml | 8 ++++++-- Source/AnimationUtility.cs | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 611df096f0c9fd160f2b71c2ec17b94489bc4d9c..2a348253eb214cacbabd4d879375b0ff85583b44 100644 GIT binary patch delta 5356 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 G>i-LkG~9Op delta 5351 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 O5drgGFOc@@^#2CdkJP&W diff --git a/Defs/AnimationDefs/Animations_Vanilla2.xml b/Defs/AnimationDefs/Animations_Vanilla2.xml index 73c7f5c..fcab1a9 100644 --- a/Defs/AnimationDefs/Animations_Vanilla2.xml +++ b/Defs/AnimationDefs/Animations_Vanilla2.xml @@ -1,5 +1,7 @@  + +
  • Human
  • @@ -370,4 +371,7 @@ -
    \ No newline at end of file + --> + + + \ No newline at end of file diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 38717f4..ef65ea7 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -82,10 +82,10 @@ namespace Rimworld_Animations { } //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH - + /* if (x.defName != "Missionary") return false; - + */ if (x.actors[i].isFucking && !rjw.xxx.can_fuck(localParticipants[i])) { From feb7e8a55776f88460a6824796662393a3292344 Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 7 Jul 2020 14:54:59 -0700 Subject: [PATCH 08/19] Added check by bodydef in actors --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 54272 bytes Defs/AnimationDefs/Animations_Beast.xml | 4 ++++ Rimworld-Animations.csproj | 2 +- Source/Actors/Actor.cs | 1 + Source/AnimationUtility.cs | 3 ++- 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 2a348253eb214cacbabd4d879375b0ff85583b44..ebfc0cc32f537b8d9fa7e07af61e965868de2b7f 100644 GIT binary patch literal 54272 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

    +lBZNU5+_vKIQ>FB7=mf)<_=WP|;iJLB z-^Ul;SqB8>HA}I|RK<|Xg3&n-!BM}$+8L@C3XWEIOW|=Q$AEt_Of1RbVpya&7}YLY zY+9u*tKuRIyAmRGd(hPjX?j-Y#)9$4QCzkuO=Ug4NHg4r^S z^8cs3vx$x5sN#5a+p|4(#+{koG1-A-HAbwoR_xJ?@y1@HBBvL>e5(y3*K=J`89FPDhLL4~cz{l_Zs(WVq zA?=d&9wKEt-CbQ>^{VQ9*7&`uKI392K5B_GE*u$0FN_Bz4sjIZ=0sTr*nPQ@{u_*R zUmlOZGU8cHs$Q(BbkwlbV+W(8H%1pb#wXLTt@t>dhTJDz9I^{Q2!j+S+(^=!^vFuC zGei)p8ax7Xy_%SaruHf>;)!MK6^lu4%0mEQB_4G5jBMRMS!3-Opxr$hqdZ@AWj4x6 zOdy20=^Mp$Lqtt)S^nI`&QEZr|6GVme3v|Rv1Ew zQUnlkP%CJ??ppxo9G6U^LOz%DE;7RSgOV`h3{t8z>VmsMIbefYu$**%2pb8_1v-!h z>(NxweKAQ3rgzc_Nncn@NTij@T4hZjDl0j^d-nC3D4j&crION`dMN3GgvJJ*NS_gA zOyl#_$NCMQgsF1vVVUrh2A594 z^J_8=C$&dGWi78;%j?#BxtcYX!nY;scRC9DmtY%7U@5EBd(wB2Yh4Pc`y+Og@Wnab zSBEpcOQyKVkFVFsDs;rDvEej65se6`_eBNt4kRb7EGTajfGeTg)5Zb4rwix<^b&Fa zZ$y&!cG9UvF}G>k(9FrWCh|>o9*8Ckj~%lTbniK1n6Pp{fuCWs3|G8A;;Aoh#gb?u zhYDD0Lx}&WPEw-1pNpk3q1h8Troovyhx#!_?6pd$MB`&YDoOyv>F_z_;)tQD=hbqE z^h6CHk_t7pAf(Y@6%VCTEELwmNB&yEm?nT=)JutDwtexH8e2DQqs|Q{|xgKlMW_H9fc)d zl9jmvvU`6E!ig-~-+>7T^af=n+$a+k5~e(C5WFa+()*WAZ+qIViQL_v2;3v^kuP7_ zHC5)HJ2VxaEqa6n64?yq(&1biQ+Q(JXlV4(Q1|5sR&|nIjwB2d}XTXn@qJ0=am!e4g)~D z`AzW`-}&NtZT`*gA$zu2NB86G9%_slXZ%{quFFuSjIge7Z#FT@Kb2kC)!zDajxslt zw#k#fhSYsBdp-kr>X-bb=r34QyruSsk=4V>HUl zYf5D>qQjT?fhsL&c9E29o^3O3GR@Gl_jeGMlg|B)sYqpo=1sR_S_{hdpjNn~Wmsth zmYGIQBT_Nf_d99gS!*@So2{gn!LaOX;t4V`oaj}?C<~PmlNs<8G6SVBq!G4?>mN#* z0(OcNt?Y!Vq=%GAtVbzjRs2>tEQiQe_OyG;2FNh6_^*yeYKqkgglEHm|-#H~iFu`qxBLSwGkTAZJ$Um_%kB?lL` z+dIz^bUagkY-fY8L86GRvh;uZ;x?<{5QlV1Cd6 zW5P!B&RV{f#R>W)pfmM+vy%Zhy@QXx+k@L!Sh#V1^ZY}t3m=(pHy1B_Ap@PQ!#h^k zpZ6pokP8eSD=F?B~yr->JC!bbW9?oO*qz9RJ71 za4l_ZDW2HxuhnkbT5;9*?^$3RY-SkLduhXf-bcvHmT15I2=Q|trlE)ORqhJM=a?OB z*`AQfK}C+tb6&^k@g>d=nW4utmkqFvcAXq z!2)V>%Lcu?vvwOe zzvN05{S)9Rx<@fBY~4W1-(cLrEPIPECU-<$-MxTN)^XxC?QrY@D!dNhcnZqJrl7oM zaGmE^7Qbl>a#pGhQBW=CIMAKP`2Rl^(MIlA#iPk#&rbh+Xm?JNd85gGI0q?nkS>c> n=aY<5Ar2i2VNfLa?dpNvcm8>kADYzu>qp-?i1%u~dol1o3E-uE literal 54272 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

  • AEXP_CatSphynx
  • + +
  • QuadrupedAnimalWithHooves
  • +
  • QuadrupedAnimalWithPawsAndTail
  • +
    true true diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index f14d4bf..818500d 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -46,7 +46,7 @@ False - ..\rjw-master\1.1\Assemblies\RJW.dll + ..\RJW\1.1\Assemblies\RJW.dll False diff --git a/Source/Actors/Actor.cs b/Source/Actors/Actor.cs index 450c3d9..55e4f79 100644 --- a/Source/Actors/Actor.cs +++ b/Source/Actors/Actor.cs @@ -17,6 +17,7 @@ namespace Rimworld_Animations { public bool isFucking = false; public bool isFucked = false; public bool controlGenitalAngle = false; + public List bodyDefTypes = new List(); public BodyTypeOffset bodyTypeOffset = new BodyTypeOffset(); public Vector3 offset = new Vector2(0, 0); diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index ef65ea7..38d71f2 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -56,7 +56,8 @@ namespace Rimworld_Animations { return false; } - } else { + } + else if (!x.actors[i].bodyDefTypes.Contains(localParticipants[i].RaceProps.body)) { if (!x.actors[i].defNames.Contains(localParticipants[i].def.defName)) { From ee776cff38e9789ca71446bb317009bbe1520d0a Mon Sep 17 00:00:00 2001 From: Platinum Date: Thu, 9 Jul 2020 15:20:17 -0700 Subject: [PATCH 09/19] genital context --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 54272 -> 55808 bytes Source/AnimationUtility.cs | 54 +++++++++++++++++++++---- 2 files changed, 47 insertions(+), 7 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index ebfc0cc32f537b8d9fa7e07af61e965868de2b7f..35ab38f6f12911f1d415cf92b35894629fbad9a6 100644 GIT binary patch literal 55808 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≪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

    +lBZNU5+_vKIQ>FB7=mf)<_=WP|;iJLB z-^Ul;SqB8>HA}I|RK<|Xg3&n-!BM}$+8L@C3XWEIOW|=Q$AEt_Of1RbVpya&7}YLY zY+9u*tKuRIyAmRGd(hPjX?j-Y#)9$4QCzkuO=Ug4NHg4r^S z^8cs3vx$x5sN#5a+p|4(#+{koG1-A-HAbwoR_xJ?@y1@HBBvL>e5(y3*K=J`89FPDhLL4~cz{l_Zs(WVq zA?=d&9wKEt-CbQ>^{VQ9*7&`uKI392K5B_GE*u$0FN_Bz4sjIZ=0sTr*nPQ@{u_*R zUmlOZGU8cHs$Q(BbkwlbV+W(8H%1pb#wXLTt@t>dhTJDz9I^{Q2!j+S+(^=!^vFuC zGei)p8ax7Xy_%SaruHf>;)!MK6^lu4%0mEQB_4G5jBMRMS!3-Opxr$hqdZ@AWj4x6 zOdy20=^Mp$Lqtt)S^nI`&QEZr|6GVme3v|Rv1Ew zQUnlkP%CJ??ppxo9G6U^LOz%DE;7RSgOV`h3{t8z>VmsMIbefYu$**%2pb8_1v-!h z>(NxweKAQ3rgzc_Nncn@NTij@T4hZjDl0j^d-nC3D4j&crION`dMN3GgvJJ*NS_gA zOyl#_$NCMQgsF1vVVUrh2A594 z^J_8=C$&dGWi78;%j?#BxtcYX!nY;scRC9DmtY%7U@5EBd(wB2Yh4Pc`y+Og@Wnab zSBEpcOQyKVkFVFsDs;rDvEej65se6`_eBNt4kRb7EGTajfGeTg)5Zb4rwix<^b&Fa zZ$y&!cG9UvF}G>k(9FrWCh|>o9*8Ckj~%lTbniK1n6Pp{fuCWs3|G8A;;Aoh#gb?u zhYDD0Lx}&WPEw-1pNpk3q1h8Troovyhx#!_?6pd$MB`&YDoOyv>F_z_;)tQD=hbqE z^h6CHk_t7pAf(Y@6%VCTEELwmNB&yEm?nT=)JutDwtexH8e2DQqs|Q{|xgKlMW_H9fc)d zl9jmvvU`6E!ig-~-+>7T^af=n+$a+k5~e(C5WFa+()*WAZ+qIViQL_v2;3v^kuP7_ zHC5)HJ2VxaEqa6n64?yq(&1biQ+Q(JXlV4(Q1|5sR&|nIjwB2d}XTXn@qJ0=am!e4g)~D z`AzW`-}&NtZT`*gA$zu2NB86G9%_slXZ%{quFFuSjIge7Z#FT@Kb2kC)!zDajxslt zw#k#fhSYsBdp-kr>X-bb=r34QyruSsk=4V>HUl zYf5D>qQjT?fhsL&c9E29o^3O3GR@Gl_jeGMlg|B)sYqpo=1sR_S_{hdpjNn~Wmsth zmYGIQBT_Nf_d99gS!*@So2{gn!LaOX;t4V`oaj}?C<~PmlNs<8G6SVBq!G4?>mN#* z0(OcNt?Y!Vq=%GAtVbzjRs2>tEQiQe_OyG;2FNh6_^*yeYKqkgglEHm|-#H~iFu`qxBLSwGkTAZJ$Um_%kB?lL` z+dIz^bUagkY-fY8L86GRvh;uZ;x?<{5QlV1Cd6 zW5P!B&RV{f#R>W)pfmM+vy%Zhy@QXx+k@L!Sh#V1^ZY}t3m=(pHy1B_Ap@PQ!#h^k zpZ6pokP8eSD=F?B~yr->JC!bbW9?oO*qz9RJ71 za4l_ZDW2HxuhnkbT5;9*?^$3RY-SkLduhXf-bcvHmT15I2=Q|trlE)ORqhJM=a?OB z*`AQfK}C+tb6&^k@g>d=nW4utmkqFvcAXq z!2)V>%Lcu?vvwOe zzvN05{S)9Rx<@fBY~4W1-(cLrEPIPECU-<$-MxTN)^XxC?QrY@D!dNhcnZqJrl7oM zaGmE^7Qbl>a#pGhQBW=CIMAKP`2Rl^(MIlA#iPk#&rbh+Xm?JNd85gGI0q?nkS>c> n=aY<5Ar2i2VNfLa?dpNvcm8>kADYzu>qp-?i1%u~dol1o3E-uE diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 38d71f2..42d6cdc 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -19,9 +19,11 @@ namespace Rimworld_Animations { //aggressors last participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator).ToList(); - //pawns that can fuck first + //pawns that can fuck last participants = participants.OrderBy(p => rjw.xxx.can_fuck(p)).ToList(); + participants = participants.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa).ToList(); + List localParticipants = new List(participants); @@ -72,22 +74,60 @@ namespace Rimworld_Animations { return false; } } + //genitals checking + if(x.actors[i].requiredGenitals != null) { + if (x.actors[i].requiredGenitals.Contains("Vagina")) { - if(x.actors[i].requiredGenitals != null && x.actors[i].requiredGenitals.Contains("Vagina")) { + if (!rjw.Genital_Helper.has_vagina(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have vagina"); + return false; + } - if (!rjw.Genital_Helper.has_vagina(localParticipants[i])) { - Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have vagina"); - return false; - } + } + if (x.actors[i].requiredGenitals.Contains("Penis")) { + + if (!(rjw.Genital_Helper.has_multipenis(localParticipants[i]) || rjw.Genital_Helper.has_penis_infertile(localParticipants[i]) || rjw.Genital_Helper.has_penis_fertile(localParticipants[i]))) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have penis"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("Mouth")) { + + if (!rjw.Genital_Helper.has_mouth(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have mouth"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("Anus")) { + + if (!rjw.Genital_Helper.has_anus(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have anus"); + return false; + } + + } + + if(x.actors[i].requiredGenitals.Contains("Breasts")) { + if (!rjw.Genital_Helper.can_do_breastjob(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " doesn't have breasts"); + return false; + } + } } + + //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH /* if (x.defName != "Missionary") 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"); From 5d63725e9d4590e67371eaaa7d5c322672c4b1dc Mon Sep 17 00:00:00 2001 From: Platinum Date: Thu, 9 Jul 2020 17:07:17 -0700 Subject: [PATCH 10/19] blacklisting genital types --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 55808 -> 56832 bytes Source/AnimationUtility.cs | 43 +++++++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 35ab38f6f12911f1d415cf92b35894629fbad9a6..a0d56f59d7240cdbb151ab74f26c57970949172c 100644 GIT binary patch delta 4592 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 BG&}$R delta 4013 zcmaKv3v?9a702&4vpbpD-Rx#x$&yVr??4D9yx(XrKuif3B}5=W69{1?5_y$JElxBP zsgDEkLn`9Y2#TQ9YByR`JOpD69zj!xX@a1^)<+>($+m_Tw*&7GI{B%QVvYibFIF1g*a7te{JXh*`sSn^raxgd|H>7wS z$qXFm*p7h&o+1t7^VwjV+J>%V{2u4`vuxJRUuA8H~59hrvEs5ger@k#csYEVMEoRaz zD=*GZklvR0@Pb&rDZf!#XW`A${e052qtbSn%+T~k>9mCAt5Sxz`1wOKp5kYIF+vWy zgPhH%lqy_&{miM>1b4!)HT>oL+obg_o>Vm0o#;-S_~4}uH<@n^IX3)%q@xyv|BaN-Cyk2Zf-5jly`KJd-DvrIL+-+T_wfMB(XW_llD5mWh&)AIj>lE?4dCFV}?D|1T%Cd-(?oXC7kQ25id^SMDS@_CM=5kJ<_WP z4%o5qaO}&rSlASdL*@qZ_>}M%{Z+JszC&1NUedxS1uom_J9L|9)7LO{wu?vaKfRaqQd ziQGvW8}*YqW5jNLuFym(@sMOJ9&aq>&)oh&;uI|X_7J@1VFyg~&a}%=p4G3)dBd_G ztK}~&%PLrHcf;f20R{J{ZT|JB4wBle>VXt+L%X4%Hn0(6y;syGy9b(wiFKRdfcF8O zSQB(TVh_NAQHF0-{9ayAGl#vvch!tzf8-}>D%k-(=8ij&&)o4WdyCInK0UkDo(gLU z#EOQ%gm|HvNbP{s^!HGmHPzO{*+))5emkz{=V8y)thPOLrLBfK5wZ?%vDC<}E zIZB{})H{%kcOLJkjc2X=eC-^aJLW-CwMeXoG?_c*!x2-Jqgnuymm0AxsLJ3)QpS$T z;dN4*1EF|)@<5B3X@kK^Idqz;8P!7QHr3zRVC7c$;>tRv!)>61MT;}+esOn$YO2<> z6jbfYD5hPXy310 zpI!+irW6e;;rQ}_hLv#AP}Hyz&X_ULuoBLhG10IRa%%?~R>C+^#yM3&J}KjzDxruJ zo;JSMRO;ZnQ!K29E_e>hWRfyc7eTHW+XgQ?7D1t@3fKY1VyGfzw5Woof1+L@WmKtx zgXTKXunNwt80c38`el;F(JX;MD~(-VVM^g>jF9#;Ah9D_p(4{bzlyT35 zVZ5otpkYYBcR9SDXwWdE8;S-EL$(Xri;bF~zuDr&iwg_*kcnzS}% zGkUJK?b4=7Nw&jsmZaFD^2p$kP=+O{I(phgA$zsUT`6Ukb_KvamZ{aj?U3xl(@hoVm<|CLMeLY zkf)5e7;4c|1CJtC!!yw>(tB_rx<@*JOp^uk<&R*6Yq4x+Bfa&=C%t>f-$Lw>y)4!z zTfA(mFAaIomyew9Uu@C6?4Z9MMOv6~1gHL&%-E@z&t9zI2W zLG}g6bTy+V*9FcNF$A%KSVwFmHWRyv;A#OKQ}J>kx`J3oY$P@lyA8ivn$l@34rs#Xrh?=ZT)^=-s+C}YqEgD}2{dk{cfenV@ zKb5)Qgc0=Suld{Xf6Ug>l z|CimC0@3JqQNR>vN1E@sl|^k+PpL)P8$6>vjY+()ejV~~{mzWF>U~hBeklD_?V_)y zeJEvWUHH8yEyZW$D_WBLN<`oE$e75<*Y{asW~%YGPq{m3+P+CcznXN{C#NFY4;86$ zdQ^z_w5CQ}N8C;x>hL%_`^3Y`_^I+_@7?5K-4JO3q1mf;cisXo>) GJnBF5X2=Wx diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 42d6cdc..0490e44 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -118,6 +118,49 @@ namespace Rimworld_Animations { return false; } } + + if (x.actors[i].requiredGenitals.Contains("NoVagina")) { + + if (rjw.Genital_Helper.has_vagina(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has vagina"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoPenis")) { + + if ((rjw.Genital_Helper.has_multipenis(localParticipants[i]) || rjw.Genital_Helper.has_penis_infertile(localParticipants[i]) || rjw.Genital_Helper.has_penis_fertile(localParticipants[i]))) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has penis"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoMouth")) { + + if (rjw.Genital_Helper.has_mouth(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has mouth"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoAnus")) { + + if (rjw.Genital_Helper.has_anus(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has anus"); + return false; + } + + } + + if (x.actors[i].requiredGenitals.Contains("NoBreasts")) { + if (rjw.Genital_Helper.can_do_breastjob(localParticipants[i])) { + Log.Message(x.defName.ToStringSafe() + " not selected -- " + localParticipants[i].def.defName.ToStringSafe() + " " + localParticipants[i].Name.ToStringSafe() + " has breasts"); + return false; + } + } } From 94aca1c46be54759fe29d6122e9ebfbd38855f6d Mon Sep 17 00:00:00 2001 From: Platinum Date: Sat, 11 Jul 2020 09:25:13 -0700 Subject: [PATCH 11/19] compatibility --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 56832 -> 56832 bytes Defs/AnimationDefs/Animations_Beast.xml | 134 ++++++++++++++++++ Defs/AnimationDefs/TemplateAnimation.xml | 54 +++++++ Source/AnimationUtility.cs | 2 +- .../rjwPatches/HarmonyPatch_SexTick.cs | 2 + 5 files changed, 191 insertions(+), 1 deletion(-) create mode 100644 Defs/AnimationDefs/TemplateAnimation.xml diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index a0d56f59d7240cdbb151ab74f26c57970949172c..2683db1c68489202168776ddfdde7374f14e85c5 100644 GIT binary patch delta 5228 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 F{3o$D?g#(? diff --git a/Defs/AnimationDefs/Animations_Beast.xml b/Defs/AnimationDefs/Animations_Beast.xml index 7c75c96..b0ff93e 100644 --- a/Defs/AnimationDefs/Animations_Beast.xml +++ b/Defs/AnimationDefs/Animations_Beast.xml @@ -1146,5 +1146,139 @@ + diff --git a/Defs/AnimationDefs/TemplateAnimation.xml b/Defs/AnimationDefs/TemplateAnimation.xml new file mode 100644 index 0000000..0305903 --- /dev/null +++ b/Defs/AnimationDefs/TemplateAnimation.xml @@ -0,0 +1,54 @@ + + + + diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 0490e44..b13ba0b 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -167,7 +167,7 @@ namespace Rimworld_Animations { //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH /* - if (x.defName != "Missionary") + if (x.defName != "Horse_Cowgirl") return false; */ diff --git a/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs b/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs index bf29458..b91b1a5 100644 --- a/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs +++ b/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs @@ -25,6 +25,8 @@ namespace Rimworld_Animations { if (pawn.IsHashIntervalTick(__instance.ticks_between_thrusts)) { + __instance.ChangePsyfocus(pawn, pawn2); + __instance.Animate(pawn, pawn2); if (!AnimationSettings.soundOverride || !pawn.TryGetComp().isAnimating) { From 00d8a0be4b426ff5378ce9044ca65234b5f962fd Mon Sep 17 00:00:00 2001 From: Platinum Date: Sat, 11 Jul 2020 14:20:12 -0700 Subject: [PATCH 12/19] better futa ordering for anims --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 56832 -> 56832 bytes Source/AnimationUtility.cs | 4 ++-- .../rjwPatches/HarmonyPatch_SexTick.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 2683db1c68489202168776ddfdde7374f14e85c5..7694658777388a55f1e3d19af686c6e667bbeff8 100644 GIT binary patch delta 1201 zcmY+BUq}>D7{$-s(bd&8G-`3pOm_jYv6-0?4xG}yZR0c*?gguBxk@ixE;DbV<72SVmT^N|(oO8c(_@-@GX&Y9$I-)w4 zc8`ZcspLtxzlit^LNcRs7lBkG!{RlHNhXOHS4c1^M8C0fggzETW6n&noQ@%iQDgHG zV&1fcc9J~cU*0B8)bWWqljQ-TaA#1ueV#dIY$sh0?G<<+h?J!>XP?x*xpq;CNNta^pE?&L zy>%X?+6pI;R{=*ISiT5UkzB_k2n$rvePJz7#XUhhP{kvuu|O3Osj)y63zAr%iWN>` zPby;S*-Wt~6^WE+emmT-QtKoa+cAY9I%f7CYb6$>)`e&GN+dL}G404FBlffKa1s$! z(Ep=GP9m@hZSo$=t3sra4hhmREU*eA4CSw=#urXvGa9BPvCU}sc!@b@Y=-NNUBf3q zd@~wmq{cR*VNPl-&JWbNy@}r=Y%?16ateyx8uB=brW%fM5}VQRUJ@&+;p?iCpa#pF zL{S~TB(b78rd!sE>i8ju7u7K@=(vqF)v+W+)>Oy-*0rWO@;Hg2I!ki&+{+;fai*=eq&wCsRZHsKEICqS)iA^MAHc#9j=DNvc#WIj% MCVieK;ToFcy@bvvy36CygwP61|wB#0U%5 z5e-s;3Q~|hICWEkAC+KTltHG@MN=Wj3q!q-E~@_*Ne9NxZ_o3-&%?XUaiw!y=?g_I zKh5qA_okEk;n8y9GYIim^EQEW!)5UrmBd3vj4l#P?4iH0rOj!&Q)#GDRJV&*JMiP7s?t2E^{Ld(RtH1-p#Sf_?%s`A8@sDMQIVM)jN= zCA*$}JAV`NajDxCbX2pH0X*9icAP?h(+u`S*-(a~ex_Yd%}8TZ%qg6DIBhPj41@nP zZ%i4+IL#omyWCoii5fOHgSK=VDzG3aZ|{^+fi+HIX9c!`9J}$vGVG|prA9W`jVxu@ zQHdT&eo9r?k`$s;jm9SC6lMIl%1JEsBgm;6vGCaZ=$AA}sRl!meh`oC3?4NF*%~%T za2C^CjF1~~HU#iS(tMVSQr|`9jMz`QA2(KB?5WkFuMX9mN zXjqY2yYmBedfNCLVVBXcpHoou){xIpG}TbZNnA$5TS@FP8ovB<5;S0)lPIcVQxYqx zW1)S!sE%)fcu^hS1)Z?7raFE~ku}wk+p*nLM?NP}R7VjfQB;SIlPIcV&KzvnS(;GW zHQCd;ez)+&>#5<$Y)P^?J~5P%)V9f%isv?a&kVa#NRQbyf0Kj{#F+65zZA>EJTvj@ H8s+G}AUhS* diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index b13ba0b..464db32 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -19,11 +19,11 @@ namespace Rimworld_Animations { //aggressors last participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator).ToList(); + participants = participants.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa).ToList(); + //pawns that can fuck last participants = participants.OrderBy(p => rjw.xxx.can_fuck(p)).ToList(); - participants = participants.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa).ToList(); - List localParticipants = new List(participants); diff --git a/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs b/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs index b91b1a5..c645d18 100644 --- a/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs +++ b/Source/Patches/rjwPatches/HarmonyPatch_SexTick.cs @@ -29,7 +29,7 @@ namespace Rimworld_Animations { __instance.Animate(pawn, pawn2); - if (!AnimationSettings.soundOverride || !pawn.TryGetComp().isAnimating) { + if (!AnimationSettings.soundOverride || pawn.TryGetComp() == null || !pawn.TryGetComp().isAnimating) { __instance.PlaySexSound(); } From a890f7ccd74b3b505b0df0ac5b6ccbf766b37b26 Mon Sep 17 00:00:00 2001 From: Platinum Date: Sun, 12 Jul 2020 12:41:07 -0700 Subject: [PATCH 13/19] horse cowgirl anim --- Defs/AnimationDefs/Animations_Beast.xml | 982 ++++++++++++++++++++++-- 1 file changed, 933 insertions(+), 49 deletions(-) diff --git a/Defs/AnimationDefs/Animations_Beast.xml b/Defs/AnimationDefs/Animations_Beast.xml index b0ff93e..8cda024 100644 --- a/Defs/AnimationDefs/Animations_Beast.xml +++ b/Defs/AnimationDefs/Animations_Beast.xml @@ -1146,7 +1146,7 @@ - From cd7a778f07845f357a1d75d9a5c7504b584da65d Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 14 Jul 2020 12:12:09 -0700 Subject: [PATCH 14/19] improving context by using rjw's new sexprops --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 56832 -> 57344 bytes Defs/AnimationDefs/Animations_Lesbian.xml | 48 ++++++++++++++++++ Rimworld-Animations.csproj | 2 +- Source/AnimationUtility.cs | 25 +++++++-- ...HarmonyPatch_JobDriver_SexBaseInitiator.cs | 8 +-- 5 files changed, 74 insertions(+), 9 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 7694658777388a55f1e3d19af686c6e667bbeff8..f0a037deb03e568a66c1d93a9c7a3ec130e42e98 100644 GIT binary patch delta 19476 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 diff --git a/Defs/AnimationDefs/Animations_Lesbian.xml b/Defs/AnimationDefs/Animations_Lesbian.xml index 975903f..2c7b198 100644 --- a/Defs/AnimationDefs/Animations_Lesbian.xml +++ b/Defs/AnimationDefs/Animations_Lesbian.xml @@ -671,5 +671,53 @@ + + diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index 818500d..f14d4bf 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -46,7 +46,7 @@ False - ..\RJW\1.1\Assemblies\RJW.dll + ..\rjw-master\1.1\Assemblies\RJW.dll False diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index 464db32..d5a3848 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -14,11 +14,13 @@ namespace Rimworld_Animations { Note: always make the list in this order: Female pawns, animal female pawns, male pawns, animal male pawns */ - public static AnimationDef tryFindAnimation(ref List participants, rjw.xxx.rjwSextype sexType = 0) { + public static AnimationDef tryFindAnimation(ref List participants, rjw.xxx.rjwSextype sexType = 0, rjw.SexProps sexProps = null) { //aggressors last participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator).ToList(); + participants = participants.OrderBy(p => p == sexProps.Giver).ToList(); + participants = participants.OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa).ToList(); //pawns that can fuck last @@ -30,7 +32,6 @@ namespace Rimworld_Animations { IEnumerable options = DefDatabase.AllDefs.Where((AnimationDef x) => { - if (x.actors.Count != localParticipants.Count) { return false; } @@ -191,7 +192,15 @@ namespace Rimworld_Animations { //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)) { + if(sexProps != null) { + + if(x.actors[i].initiator && localParticipants[i] == sexProps.Reciever) { + initiatorsAlignWithSexType = false; + } + + } + + else if (x.actors[i].initiator && !(localParticipants[i].jobs.curDriver is rjw.JobDriver_SexBaseInitiator)) { initiatorsAlignWithSexType = false; } } @@ -203,7 +212,15 @@ namespace Rimworld_Animations { //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)) { + if (sexProps != null) { + + if (x.actors[i].initiator && localParticipants[i] == sexProps.Giver) { + initiatorsAlignWithSexType = false; + } + + } + + else if (x.actors[i].initiator && !(localParticipants[i].jobs.curDriver is rjw.JobDriver_SexBaseInitiator)) { initiatorsAlignWithSexType = false; } } diff --git a/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs b/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs index b297ff8..c00d8bc 100644 --- a/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs +++ b/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs @@ -55,15 +55,15 @@ namespace Rimworld_Animations { bool quickie = (__instance is JobDriver_SexQuick) && AnimationSettings.fastAnimForQuickie; if (bed != null) { - RerollAnimations(Target, __instance.duration, bed as Thing, __instance.sexType, quickie); + RerollAnimations(Target, __instance.duration, bed as Thing, __instance.sexType, quickie, sexProps: __instance.Sexprops); } else { - RerollAnimations(Target, __instance.duration, sexType: __instance.sexType, fastAnimForQuickie: quickie); + RerollAnimations(Target, __instance.duration, sexType: __instance.sexType, fastAnimForQuickie: quickie, sexProps: __instance.Sexprops); } } } - public static void RerollAnimations(Pawn pawn, int duration, Thing bed = null, xxx.rjwSextype sexType = xxx.rjwSextype.None, bool fastAnimForQuickie = false) { + public static void RerollAnimations(Pawn pawn, int duration, Thing bed = null, xxx.rjwSextype sexType = xxx.rjwSextype.None, bool fastAnimForQuickie = false, rjw.SexProps sexProps = null) { if(pawn == null || !(pawn.jobs?.curDriver is JobDriver_SexBaseReciever)) { Log.Message("Error: Tried to reroll animations when pawn isn't sexing"); @@ -76,7 +76,7 @@ namespace Rimworld_Animations { pawnsToAnimate = pawnsToAnimate.Append(pawn).ToList(); } - AnimationDef anim = AnimationUtility.tryFindAnimation(ref pawnsToAnimate, sexType); + AnimationDef anim = AnimationUtility.tryFindAnimation(ref pawnsToAnimate, sexType, sexProps); if (anim != null) { From 13b211a592e4d711ba5257f02c040f482a161de3 Mon Sep 17 00:00:00 2001 From: Platinum Date: Tue, 14 Jul 2020 19:20:41 -0700 Subject: [PATCH 15/19] Cunnilingus Anim --- Defs/AnimationDefs/Animations_Lesbian.xml | 1057 ++++++++++++++++++++- Source/AnimationUtility.cs | 2 +- 2 files changed, 1049 insertions(+), 10 deletions(-) diff --git a/Defs/AnimationDefs/Animations_Lesbian.xml b/Defs/AnimationDefs/Animations_Lesbian.xml index 2c7b198..488b610 100644 --- a/Defs/AnimationDefs/Animations_Lesbian.xml +++ b/Defs/AnimationDefs/Animations_Lesbian.xml @@ -671,8 +671,6 @@ - - diff --git a/Source/AnimationUtility.cs b/Source/AnimationUtility.cs index d5a3848..52a86d6 100644 --- a/Source/AnimationUtility.cs +++ b/Source/AnimationUtility.cs @@ -168,7 +168,7 @@ namespace Rimworld_Animations { //TESTING ANIMATIONS ONLY REMEMBER TO COMMENT OUT BEFORE PUSH /* - if (x.defName != "Horse_Cowgirl") + if (x.defName != "Cunnilingus") return false; */ From 3733c1caa47341afb3d9f55bad50448c0434803c Mon Sep 17 00:00:00 2001 From: Platinum Date: Wed, 15 Jul 2020 01:03:01 -0700 Subject: [PATCH 16/19] Fixed cunnilingus tags --- Defs/AnimationDefs/Animations_Lesbian.xml | 3 ++- Rimworld-Animations.csproj | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Defs/AnimationDefs/Animations_Lesbian.xml b/Defs/AnimationDefs/Animations_Lesbian.xml index 488b610..e8da71b 100644 --- a/Defs/AnimationDefs/Animations_Lesbian.xml +++ b/Defs/AnimationDefs/Animations_Lesbian.xml @@ -676,7 +676,8 @@ true -

  • Vaginal
  • +
  • Oral
  • +
  • Fingering
  • diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index f14d4bf..818500d 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -46,7 +46,7 @@ False - ..\rjw-master\1.1\Assemblies\RJW.dll + ..\RJW\1.1\Assemblies\RJW.dll False From ab3a87bb5f470a552570244283fce77024987181 Mon Sep 17 00:00:00 2001 From: Platinum Date: Sat, 18 Jul 2020 10:30:56 -0700 Subject: [PATCH 17/19] tweaks for potential null ref. check errors --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 57344 -> 57344 bytes Rimworld-Animations.csproj | 2 +- Source/Comps/CompBodyAnimator.cs | 2 +- Source/Patches/HarmonyPatch_AlienRace.cs | 8 +++++--- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index f0a037deb03e568a66c1d93a9c7a3ec130e42e98..57962fa97711f8402ad971e0afb8d980064b4501 100644 GIT binary patch delta 2152 zcmY+_eMr=I90&0C_ny@5mwD;ToDcUqPrJ@DqqW6clq-+aB9|+>%!kTzdj1+}HE3u% z#VuqL*74h<_UJ&_+8P-**dH}08;1ke#t`NLR|k!x9VEoID5ZU$I=KV!UVgrx&--)V zyTiV##=fh@GlQm@k@kHu^mH3ap0K^l>3MG*1WcYIDLvKfcfBpSCzG~hcCO-$rlO2ub5EAOrZh%A4ri>t zvN`D4!aDoWjY(@Bs<=*P?aQ_xA1w(wnxKKMc2U%l3SfGkgStN9*isdhh+F2T}qD+bfs%V$0G%^{siIcrtiquzJWn3)2*sQ|K z6+xG3fdft3!15!>TT*AN4s^-l^?aY%fs7q&Xatv6T2O#)sSzvFX)f`a3h+KxD61=b z)>?qk1l{2p#wll%*0R`V8pDX>&RLzPm6jB%r!5)fnD*vr2!!&r1aw7M}Z6*VeK zDO|6JG4sYuWdqu!7M*#@^O%*YUG<`}74z|0wNeh>9?`ex+($3z0#i^1Rv;#etg!+M zTw)n7oVB9SRM@O|(G^#RvI8IN6*X_(F{Kjobx%)rD7$gRC$#A7S8C8+|5QWD9vq_I z6q?Uo;pa*nzT=Ewr^x~z^afTGH{-)6Tw)m?{*Ko+B-8ng>|_Mf^i4Z}^d_N;ITqBz zBh^RJNW_%OxGab9ZM>1-2qw9rLl8 z?PP(`lusR(lopH#k@I$T@=IA;SMVIwxU9Xt`g?lvfs`S;iq;-;(M5yVgfg>>59NV= zWJ$3=KZcJj1^V%s5D)ZYOx9SSALFvd0{wU(#RC0!%q8y0kEG*lCcCGgg%;B|2j~}z zX-4WQCg_-Z@uL>B;(@H4!B0vnmY-l_2H+*XDzCxCB_i6;o}d$4;*DuTpX{S~L9}7~ z4KaoVwqb&c9VKYTESGpI0=O;3ZYF@=PO`pe$}Pw5N&q*7_{{_ml{I!V0mNkO(&|}y zvh+>fN7&5-1K7kV_6}e>m)JCbU0mX30{B^qEgHbB_(_5eJmM0IYFLnBi)y&tv$Uv& zIU&BNR)_nt$TrpRP!`#y8eZyM+El}KF0rVF8ZNP@1|OGLRKp+PbH}eICl%&YTGkrU z^_JeXNl%`An?8?)_1<$8X5~8WS>`tO+#XUh b$;Pm4<}VUXz4^#!*!x1*_UC;PTA%bkIg!3W delta 2132 zcmZA2e@xV690&0CbH^RveI+g&AoAnB$5C*c;LLvL7+em5bVFo92cl#g;c+_rQJV$% zg>cR-oU*UcvE{0b&D1tyS8FTU0Q11Dl`A$WXGz-P51VaG$4aW_`8Z~Mv&Eaw2F*V2 z2KJme;mu6{@-Kc zS03)MML+QEx9ES0S#2rVhqnW9zWT(@P2#=Unb4Wa8&W&c%(CL!>`c_RW~9W>OU3FQ z?8l@d8>OV9>2(=))KN;3fja6)GEYZ`-w;cC zAOdwnRFUybb+Bh;EyCk<6e)>79ZgDAR-t=JT_kLjeIJsFNFu(_rei%RhJCsnZq#ms z$d4tICQUos2&&@6oPf=Zgi5hZ3|~BIM=n~G-ggMSPLlVOi(XQH`o4_oj$A~RXqq&D zH#{@EritG#1`x}db$F0d4UsRm@gkoSklT1sLeItk<~?%`FGiGRteRGgy7SuF8P@lFHRs8AT`Qi@W)9Udq zF^0`?b_CGbB#QE60ysjF!vygCLTznA0JEeRrudiEfWLQ$z8EfK+R=y=JEgkw#;uJg zB*{G+v5wShporz$8&NI^pY^=99V6|cu@|jeO}L`e&$R=m!m{=y*G>fX2+7f!5hTfo zX6z;PVj1%7&3IF3mgl{Q<4T5M$+z#q+Y5~hFX3a-3_HhvY%Tai$?eg(x;sSROyX(x zu-1ZOQtYfttURG=MY&IKMO1C?%Fp=9Yf6@k=XvcWi4SUIFwTEeQ3M8oeH6h&U=W87 zECvQ~REh$FIIe0UFo=k%iNGMPDT%-!Zj$6V1#yQY&dCsgbHrZ$U&Q zJCZ!oR$NoHlenz4;;vE!yP~~}j+1`T7fb8*lxu1L|K;d)$EMKNg@ zH&jtf8b)r{;-p~|lH{OaJWY~=hT$j4LBkk}4j;Uj5TBA+WiPPgnVnq)@wZnU;h+DF zp6?ngPwrcP;!GuuY#yE%`@z-njx)M#?4#7>$?8vDWO~iz)2mo!v|##IX8KurH0j5` Rtd^3eqRyZ0u>Lji{{e@yx^Msh diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index 818500d..f14d4bf 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -46,7 +46,7 @@ False - ..\RJW\1.1\Assemblies\RJW.dll + ..\rjw-master\1.1\Assemblies\RJW.dll False diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index b92bb0b..8a25e67 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -45,7 +45,7 @@ namespace Rimworld_Animations { private float clipPercent = 0; public Vector3 anchor, deltaPos, headBob; - public float bodyAngle, headAngle, genitalAngle; + public float bodyAngle, headAngle, genitalAngle = 0; public Rot4 headFacing, bodyFacing; public bool controlGenitalAngle = false; diff --git a/Source/Patches/HarmonyPatch_AlienRace.cs b/Source/Patches/HarmonyPatch_AlienRace.cs index 80198b6..cb1c294 100644 --- a/Source/Patches/HarmonyPatch_AlienRace.cs +++ b/Source/Patches/HarmonyPatch_AlienRace.cs @@ -77,8 +77,10 @@ namespace Rimworld_Animations { - Vector2 bodyOffset = ((!portrait) ? offset?.bodyTypes : (offset?.portraitBodyTypes ?? offset?.bodyTypes))?.FirstOrDefault((AlienPartGenerator.BodyTypeOffset to) => to.bodyType == pawn.story.bodyType)?.offset ?? Vector2.zero; - Vector2 crownOffset = ((!portrait) ? offset?.crownTypes : (offset?.portraitCrownTypes ?? offset?.crownTypes))?.FirstOrDefault((AlienPartGenerator.CrownTypeOffset to) => to.crownType == alienComp.crownType)?.offset ?? Vector2.zero; + Vector2 bodyOffset = (portrait ? offset?.portraitBodyTypes ?? offset?.bodyTypes : offset?.bodyTypes)?.FirstOrDefault(predicate: to => to.bodyType == pawn.story.bodyType) + ?.offset ?? Vector2.zero; + Vector2 crownOffset = (portrait ? offset?.portraitCrownTypes ?? offset?.crownTypes : offset?.crownTypes)?.FirstOrDefault(predicate: to => to.crownType == alienComp.crownType) + ?.offset ?? Vector2.zero; //Defaults for tails //south 0.42f, -0.3f, -0.22f @@ -127,7 +129,7 @@ namespace Rimworld_Animations { else { Quaternion addonRotation = quat; - if (AnimationSettings.controlGenitalRotation && pawnAnimator.controlGenitalAngle && ba.hediffGraphics[0] != null && (ba.hediffGraphics[0].path.Contains("Penis") || ba.hediffGraphics[0].path.Contains("penis"))) { + if (AnimationSettings.controlGenitalRotation && pawnAnimator.controlGenitalAngle && ba.hediffGraphics[0]?.path != null && (ba.hediffGraphics[0].path.Contains("Penis") || ba.hediffGraphics[0].path.Contains("penis"))) { addonRotation = Quaternion.AngleAxis(angle: pawnAnimator.genitalAngle, axis: Vector3.up); } From 94e879a5708a5a6a687fde9c09dc514b50088196 Mon Sep 17 00:00:00 2001 From: Platinum Date: Sat, 18 Jul 2020 10:47:23 -0700 Subject: [PATCH 18/19] stopped preventing vanilla rjw jobdriver from playing anim now that pawns get out of bed --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 57344 -> 56832 bytes ...HarmonyPatch_JobDriver_SexBaseInitiator.cs | 3 +-- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 57962fa97711f8402ad971e0afb8d980064b4501..5a9eb024f6ae73650f92447b886704eef869e132 100644 GIT binary patch delta 2677 zcmaKu4NR1E9LK-U|MWQExr2j~17?aR>J?XGYT3#n1LVzoNrmG@2|d8$P;QUl%d!ro zoO4#dzgOSN+L{)t=rXI7QBzl2E7y>yz@ki9wb52&D|`9<|IY)QSL@mCp8I^izqkAU z@Bct+kE!)-Q~Ms*Z~Y@b!nnSMD*95z9WRvH`hNkINkPE}rj8lOYK8)p zgty6<%4aYSFIVQoWuGG{gI;}nuac$o^VgL*$^bvFxYE>7lIbd>7sF%>?*MwY0t&C` zUl3l-GUqCG-ZKCCX%`g=Sl;q1S&qL<)>w}XTAvxg6!&Zeap6<*&5Z4g;UC@9$bOCq z-?Ctb!mO6?8#kY1wk!*RrseJ&iqmQ>;RkMgLSZK?{F>Xk9iNbulH#@jSqN1Ele7^F z|K>JV)itpZhF2K5kxGS7$|IF3p|nIQaBd3^%SkD3mpk%4wm98H||w#pn1KkAw0j$0O(hTHkdv zeG0_QCTTxOp|Xi^vvx`-^hLABDwwtJg(SY|cwd)F%GyX}vC2Qn*~B{4@WMN63hPn% zk&;YyLFF}h)7h}f`J(%xM2nS|-+4Sr%(U{d-1+P#D}N}rjxDtE(cHYKkYX#}mA5}i zY_{^+{A<}kD{s%wjq;9K`P9YNva?oRusFKd7gpX&9&G&YXirJxJM)tH;Q}XHXyYde z7F}IdSt{+7g-%vy1?G+_UuP(}10v|3}8zrVEgdbVbWAQ9ZKyWi1%eb?%>Fl@<&@VvCBhBG(hlJ{+ zbET_V0$)^?I+38Aq%ij`acqA2&jfQKB{=y@WpV80ME=d{!HC?3#IfAh=+juUwDD#i zi`>+d@#(aI@q}r1o>n%SdF=le(L@o&B0}%K!Oq_*bJ+CHQTwReEYF|Zw z$B{oxQw#B9sZNt-HKfkH`bxIuB7E8sQAV|r1o#MuT>r46-2Rk&bK2hkcF4d~uGL~GI57!s(@R*h|q zg7g;E*eR)v9(-S-LBL;<-+gyWV<9Q0!;gqBy<%M`N*5d<%T$wY79&HjG zhGGx7y4CeK*aXpkNI8}vLZ36t8)nWU>e5Nsn0A6fM+{==MdV$UBnDN8l7h0RZ0Li- zAkol=PHm#05BqhJ{d_n=ME!?iMMEFD3{y1pVZT;sKIvnnwwBh|2JueGj%k4UB9Y?ZD0Iu PVxAkr_VXi3M|R9V?car4 delta 2923 zcmai$du&ui6vn?h#g%Pu?{3>=X&aSgsqI#3MQnfskw+=C6fFp)ODTQ1eJoqrx-Ei= zZna7f>!TS(z_$q+Q6uCk{-f9sW6)qy)Iddf)L=w3@qr={HJ&r~wk&I+n{4O)zH{b$ zXJ$IL?Rht;XCUeE&HjoP`nSUVoP^((qD=vYNN`x^l8tuSy7s8E8214;c8GjyK@ zorF`r0awV0qCl?H@{)sxN%GNmNN&+4Ye(f?El)cxk8A#{BC5cjQu+#9h95Qp=QjYF zy#B~^bBV~As*RKDimvsa(I{cbx|b;A`8z4qS&)wCVFxT#|45MXo**v`YP@hOm;OSAWp6swBQJ>mL^F_T& znhWP9)Qr01tkQh3#U)!y+Y(|sT=L4Ye6ialOUvdY#0FgQ5XBC=t*{U8cU0HKK z*ZiV}YnrL6d*kaBct+~oMNj`xZ-+;osJ%IR&;v}WT!vsH;HFDGX<=pAd>UID%>{MU z?${H{39uC3Bk)&B7^QP)0lkc zdamA|RE=UqR?%uKR@93^E#Rm|jZFnfuj#As`5La$izcEPoVKZ-Xfqvwr8saK4%+0; znMky)gB^yQ&-(Z1x8a2ju>Y|3s*h7&v4e$^ZXnuik+wGL9ZEfGlgKWk*ab!0s7B=N zR7I6x2$?pqVF+8J7Y##r&LZU(!cHRcA9k`~2)ped8-{S!CN>P=f+B05Lb$w(i(2~> zf?H89CedHt5Qc0Tz<#Q7CN8rHXYJVI_(*R;YBv>$(K(f9gL*RpjP_Bqp!E{!R%98r zphuBq*n-{bcwR5qum$@SSv%8;V~VV!2;-zpyfa~Zx`F4#hMgz;NAxg`DzuIwjA4t^ z&V=!U9ov(2j54pglP3;qyfa};S7hx>7{!XLM#EUF$Z9lyBo;aEp^HHUCdwv_*RMkStDnm2I>D>0E zTQJhh|1YG0i~Fd+$c}X@Bg_21*TGHmO1LSjajw*+X`2+h6>4 zSzmeImT_g95AHl;77V=ZO%K@r$nr15Jbw1|PxOkSbEY_=Ytr}CkZBD4ktCK+Gt<8M JQR|;_`9BbbrQ!ep diff --git a/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs b/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs index c00d8bc..916855b 100644 --- a/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs +++ b/Source/Patches/rjwPatches/HarmonyPatch_JobDriver_SexBaseInitiator.cs @@ -23,8 +23,7 @@ namespace Rimworld_Animations { } if(__instance is JobDriver_JoinInBed) { - Log.Warning("Tried to start wrong JobDriver with Rimworld-Animations installed. If you see this warning soon after installing this mod, it's fine and animated sex will start soon. If you see this a long time after installing, that's a problem."); - return; + Log.Warning("Playing regular RJW joininbed jobdriver, if it animates properly ignore this warning"); } Pawn pawn = __instance.pawn; From 4563b5f943fd034f4ae1b77b73b7cf535ae3543a Mon Sep 17 00:00:00 2001 From: Platinum Date: Mon, 20 Jul 2020 13:01:00 -0700 Subject: [PATCH 19/19] placeholders in memory to prevent null ref errors --- 1.1/Assemblies/Rimworld-Animations.dll | Bin 56832 -> 56832 bytes Source/Comps/CompBodyAnimator.cs | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/1.1/Assemblies/Rimworld-Animations.dll b/1.1/Assemblies/Rimworld-Animations.dll index 5a9eb024f6ae73650f92447b886704eef869e132..223bf6c3bda21ce5d265315c4c8661616178083e 100644 GIT binary patch delta 10338 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 NujTDeguRu9e*)~+A3gv8 delta 10261 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 diff --git a/Source/Comps/CompBodyAnimator.cs b/Source/Comps/CompBodyAnimator.cs index 8a25e67..33bd110 100644 --- a/Source/Comps/CompBodyAnimator.cs +++ b/Source/Comps/CompBodyAnimator.cs @@ -44,9 +44,9 @@ namespace Rimworld_Animations { private int curStage = 0; private float clipPercent = 0; - public Vector3 anchor, deltaPos, headBob; - public float bodyAngle, headAngle, genitalAngle = 0; - public Rot4 headFacing, bodyFacing; + public Vector3 anchor = Vector3.zero, deltaPos = Vector3.zero, headBob = Vector3.zero; + public float bodyAngle = 0, headAngle = 0, genitalAngle = 0; + public Rot4 headFacing = Rot4.North, bodyFacing = Rot4.North; public bool controlGenitalAngle = false;