using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using UnityEngine; using Verse; namespace Rimworld_Animations { public class PawnRenderSubWorker_ChangeOffset : PawnRenderSubWorker { public override void TransformOffset(PawnRenderNode node, PawnDrawParms parms, ref Vector3 offset, ref Vector3 pivot) { if (node.AnimationWorker is AnimationWorker_KeyframesExtended && node.tree.pawn.TryGetComp(out CompExtendedAnimator extendedAnimator) && extendedAnimator.IsAnimating) { Vector3? pawnOffset = extendedAnimator.Offset; if (pawnOffset != null) { offset += (Vector3)pawnOffset; } } } } }