I'm trying to create an infinitely scrolling horizontal animation using GSAP. It works great, until I reverse the animation, go into negative time and change the time scale multiple times. To reproduce in the CodePen, press reverse, then spam the toggle speed button until the blue rectangle moves incorrectly.
I fixed several of the original issues using this form post, but not all.
A few notes about the CodePen.
Code is written pretty oddly because I ripped it out of my current code base where I'm implementing this as a directive in a reactive framework.
Spamming the speed toggle is just to reproduce mouse movement, which will be controlling the speed, I just didn't include all that code.
Blue and red squares are clones in the real case. They are different colors for clarity.
I'm sure there is a better way to make this animation work, and I would be open to it if it fixed my problem.