diff --git a/1.5/Assemblies/Rimworld-Animations.dll b/1.5/Assemblies/Rimworld-Animations.dll index 1ee843e..292a905 100644 Binary files a/1.5/Assemblies/Rimworld-Animations.dll and b/1.5/Assemblies/Rimworld-Animations.dll differ diff --git a/1.5/Defs/AnimationDefs/TestAnimation2.xml b/1.5/Defs/AnimationDefs/TestAnimation2.xml index 04fb662..8125f0c 100644 --- a/1.5/Defs/AnimationDefs/TestAnimation2.xml +++ b/1.5/Defs/AnimationDefs/TestAnimation2.xml @@ -13,25 +13,25 @@ Rimworld_Animations.AnimationWorker_KeyframesExtended
  • - (1, -1, 0) + (1, 0, 0) 0 0 North
  • - (0, -1, 0) + (0, 0, 0) 30 15 North
  • - (-1, -1, 0) + (-1, 0, 0) 60 0 North
  • - (0, -1, 0) + (0, 0, 0) 90 -15 North diff --git a/1.5/Source/Comps/ExtendedAnimatorAnchor/ExtendedAnimatorAnchor_Thing.cs b/1.5/Source/Comps/ExtendedAnimatorAnchor/ExtendedAnimatorAnchor_Thing.cs index 8b61405..4331046 100644 --- a/1.5/Source/Comps/ExtendedAnimatorAnchor/ExtendedAnimatorAnchor_Thing.cs +++ b/1.5/Source/Comps/ExtendedAnimatorAnchor/ExtendedAnimatorAnchor_Thing.cs @@ -22,6 +22,7 @@ namespace Rimworld_Animations public override Vector3 getDrawPos() { + //vector3.up means stand above the thing return thing.DrawPos; } diff --git a/1.5/Source/MainTabWindows/MainTabWindow_OffsetConfigure.cs b/1.5/Source/MainTabWindows/MainTabWindow_OffsetConfigure.cs index 058518a..18ba6d6 100644 --- a/1.5/Source/MainTabWindows/MainTabWindow_OffsetConfigure.cs +++ b/1.5/Source/MainTabWindows/MainTabWindow_OffsetConfigure.cs @@ -8,7 +8,7 @@ namespace Rimworld_Animations { class MainTabWindow_OffsetConfigure : MainTabWindow { - public override Vector2 RequestedTabSize => new Vector2(505, 450); + public override Vector2 RequestedTabSize => new Vector2(505, 500); public override void DoWindowContents(Rect inRect) { Rect position = new Rect(inRect.x, inRect.y, inRect.width, inRect.height); @@ -76,6 +76,8 @@ namespace Rimworld_Animations { } + listingStandard.Label("RimAnims_ShareSettings".Translate()); + extendedAnimator.Offset = newOffsetVector; extendedAnimator.Rotation = rot; diff --git a/1.5/Source/Patches/RimworldPatches/HarmonyPatch_Pawn_DrawTracker.cs b/1.5/Source/Patches/RimworldPatches/HarmonyPatch_Pawn_DrawTracker.cs index 8b467e1..31c4692 100644 --- a/1.5/Source/Patches/RimworldPatches/HarmonyPatch_Pawn_DrawTracker.cs +++ b/1.5/Source/Patches/RimworldPatches/HarmonyPatch_Pawn_DrawTracker.cs @@ -7,20 +7,20 @@ namespace Rimworld_Animations { [HarmonyPatch(typeof(Pawn_DrawTracker), "DrawPos", MethodType.Getter)] public static class HarmonyPatch_Pawn_DrawTracker { - public static bool Prefix(ref Pawn ___pawn, ref Vector3 __result) { - - CompExtendedAnimator animator = ___pawn.TryGetComp(); + //switch to postfix to get pawn original height first + public static void Postfix(ref Pawn ___pawn, ref Vector3 __result) { //align pos on top of partner, position, etc., based on animatoranchor - if (animator != null && animator.IsAnchored) + if (___pawn.TryGetComp() is CompExtendedAnimator animator + && animator.IsAnchored) { - __result = animator.getAnchor(); - return false; + Vector3 anchor = animator.getAnchor(); + //ignore y so that pawns don't clip through stuff + __result.x = anchor.x; + __result.z = anchor.z; } - return true; - } } } diff --git a/Languages/English/Keyed/RJWAnimations-LanguageData.xml b/Languages/English/Keyed/RJWAnimations-LanguageData.xml index bf1b69d..95ecca6 100644 --- a/Languages/English/Keyed/RJWAnimations-LanguageData.xml +++ b/Languages/English/Keyed/RJWAnimations-LanguageData.xml @@ -14,8 +14,9 @@ Debug Mode + Animation Manager Warning--You generally don't want to change human offsets, only alien offsets or animals Copy Offset to Clipboard - Animation Manager + Paste offset values in OffsetDef, or share in Discord \ No newline at end of file