Well, I would like to create a system that allows the user to go back in time in the style of Prince of Persia, but I have no idea how to record the movements made, and then pressing a button, load the recording in reverse order .. .
Maybe you should record the types/order of the player's animations and his movements on x seconds (or when the player can reverse time).
Whenever the player's animation change, you store the animation ID an array with the player's position in the Update function.
And when the player press the "reverse" button, you read the array.
Dunno if I was clear enough but hope it will help you.