I want to preserve the pose that the animation moves the player into after the animation has completed, then be able to whenever I desire to finish the animation and return back to normal positioning.
I read the above post, but it was to no avail because I already have a lot of made animations that cannot scalably be remade with the extra keyframe.
You could possibly Connect on GetPropertyChangedSignal for TimePosition and check if it’s very close to the total Length of the animation, if so then stop it:
local Close = 0.05
AnimTrack:GetPropertyChangedSignal("TimePosition"):Connect(function()
if (AnimTrack.Length - AnimTrack.TimePosition) <= Close then
AnimTrack:Stop()
end
end)
Shucks, you may have to wait out the AnimTrack.Length minus some offset and then stop it - thought wait has unpredictablities and won’t exactly wait correctly.
As you might fear, a extra Keyframe at the end along with a GetMarkerReachedSignal Connection is the better solution.