diff --git a/1.3/Assemblies/Rimworld-Animations.dll b/1.3/Assemblies/Rimworld-Animations.dll index 6ff134c..9312f8c 100644 Binary files a/1.3/Assemblies/Rimworld-Animations.dll and b/1.3/Assemblies/Rimworld-Animations.dll differ diff --git a/1.3/Source/AnimationUtility.cs b/1.3/Source/AnimationUtility.cs index ef089f1..c235c89 100644 --- a/1.3/Source/AnimationUtility.cs +++ b/1.3/Source/AnimationUtility.cs @@ -18,7 +18,7 @@ namespace Rimworld_Animations { participants = participants.OrderBy(p => p.jobs.curDriver is rjw.JobDriver_SexBaseInitiator) - .OrderBy(p => p == sexProps.Giver) + .OrderBy(p => p == sexProps.giver) .OrderByDescending(p => rjw.GenderHelper.GetSex(p) == rjw.GenderHelper.Sex.futa) .OrderBy(p => rjw.xxx.can_fuck(p)) .ToList(); @@ -114,10 +114,10 @@ namespace Rimworld_Animations { } return true; }); - List optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.DictionaryKey)); + List optionsWithInteractionType = options.ToList().FindAll(x => x.interactionDefTypes != null && x.interactionDefTypes.Contains(sexProps.sexType.ToStringSafe())); if (optionsWithInteractionType.Any()) { if (AnimationSettings.debugMode) - Log.Message("Selecting animation for interaction type " + sexProps.DictionaryKey.defName + "..."); + Log.Message("Selecting animation for interaction type " + sexProps.sexType.ToStringSafe() + "..."); return optionsWithInteractionType.RandomElement(); } List optionsWithSexType = options.ToList().FindAll(x => x.sexTypes != null && x.sexTypes.Contains(sexType)); diff --git a/1.3/Source/Comps/CompBodyAnimator.cs b/1.3/Source/Comps/CompBodyAnimator.cs index 9e0c9b1..68958da 100644 --- a/1.3/Source/Comps/CompBodyAnimator.cs +++ b/1.3/Source/Comps/CompBodyAnimator.cs @@ -334,11 +334,10 @@ namespace Rimworld_Animations { { if(AnimationSettings.applySemenOnAnimationOrgasm && (pawn?.jobs?.curDriver is JobDriver_Sex)) { - Pawn partner = (pawn.jobs.curDriver as JobDriver_Sex)?.Partner; - if (anim.sexTypes.Contains((pawn.jobs.curDriver as JobDriver_Sex).sexType)) + if (anim.sexTypes.Contains((pawn.jobs.curDriver as JobDriver_Sex).Sexprops.sexType)) { - SemenHelper.calculateAndApplySemen(pawn, partner, (pawn.jobs.curDriver as JobDriver_Sex).sexType); + SemenHelper.calculateAndApplySemen((pawn.jobs.curDriver as JobDriver_Sex).Sexprops); } } } diff --git a/1.3/Source/Defs/AnimationDef.cs b/1.3/Source/Defs/AnimationDef.cs index 119b98d..d0d9d61 100644 --- a/1.3/Source/Defs/AnimationDef.cs +++ b/1.3/Source/Defs/AnimationDef.cs @@ -14,7 +14,7 @@ namespace Rimworld_Animations { public int animationTimeTicks = 0; //do not set manually public bool sounds = false; public List sexTypes = null; - public List interactionDefTypes = null; + public List interactionDefTypes = null; public override void PostLoad() { base.PostLoad(); diff --git a/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_JoinInBed.cs b/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_JoinInBed.cs index 1c7a7ec..18c955e 100644 --- a/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_JoinInBed.cs +++ b/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_JoinInBed.cs @@ -13,7 +13,7 @@ using Verse.AI; namespace Rimworld_Animations { - [HarmonyPatch(typeof(xxx), "in_same_bed")] + [HarmonyPatch(typeof(Bed_Utility), "in_same_bed")] public static class HarmonyPatch_JobDriver_InSameBedPatch { @@ -44,7 +44,7 @@ namespace Rimworld_Animations var toils = __result.ToList(); Toil goToPawnInBed = Toils_Goto.GotoThing(__instance.iTarget, PathEndMode.OnCell); - goToPawnInBed.FailOn(() => !RestUtility.InBed(__instance.Partner) && __instance.Partner.CurJobDef != xxx.gettin_loved && !xxx.in_same_bed(__instance.Partner, __instance.pawn)); + goToPawnInBed.FailOn(() => !RestUtility.InBed(__instance.Partner) && __instance.Partner.CurJobDef != xxx.gettin_loved && !Bed_Utility.in_same_bed(__instance.Partner, __instance.pawn)); toils[1] = goToPawnInBed; diff --git a/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_SexBaseInitiator.cs b/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_SexBaseInitiator.cs index 6426d93..9ebf355 100644 --- a/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_SexBaseInitiator.cs +++ b/1.3/Source/Patches/RJWPatches/JobDrivers/HarmonyPatch_JobDriver_SexBaseInitiator.cs @@ -36,10 +36,10 @@ namespace Rimworld_Animations { if (bed != null) { - RerollAnimations(Target, out AnimationTimeTicks, bed as Thing, __instance.sexType, quickie, sexProps: __instance.Sexprops); + RerollAnimations(Target, out AnimationTimeTicks, bed as Thing, __instance.Sexprops.sexType, quickie, sexProps: __instance.Sexprops); } else { - RerollAnimations(Target, out AnimationTimeTicks, sexType: __instance.sexType, fastAnimForQuickie: quickie, sexProps: __instance.Sexprops); + RerollAnimations(Target, out AnimationTimeTicks, sexType: __instance.Sexprops.sexType, fastAnimForQuickie: quickie, sexProps: __instance.Sexprops); } diff --git a/Rimworld-Animations.csproj b/Rimworld-Animations.csproj index 1d6c58a..de0884f 100644 --- a/Rimworld-Animations.csproj +++ b/Rimworld-Animations.csproj @@ -44,7 +44,7 @@ False - ..\rjw\1.3\Assemblies\RJW.dll + ..\rjw-master\1.3\Assemblies\RJW.dll False