The solution to this problem is actually a relatively messy solution, unfortunately. I had a similar situation with a dash animation, and it took a while to get a full solution on how to make it stay in the final position.
Basically, you have to add a new keyframe right before the end of the animation. You need to name this keyframe "Pause". Then, you can use AddMarker function of Keyframe. Once you have the marker setup, you can use the event of the animation GetMarkerReachedSignal to detect when the newly added marker is reached. When the marker is reached, you need to pause the player in this part of the animation so that it avoids the natural behavior of returning the player to their initial position. You may have to tweak the animation a little for this, but this is the only reliable way I found to do it.
3 comments
Maybe you could put the character in the pose of the dash and then move the CFrame of the humanoid forward so the actual roblox character is moving forward?
how can i do that?
edit the animation so it plays the dash but doesn't move the charatcher in any direction the use the CFrame to move the character