Animate a parameter converted to a time loop?

I’m trying to animate an arrow moving across the screen with a time loop (so it’ll move all the way to the right, then pop back up on the left and move across to the right again, etc.), but at some point during the animation I want to change the color of the arrow. I figure I can convert either the origin or offset (within transformation) parameter to a time loop so the color parameter remains independent of the time loop. However, when I convert offset to time loop, I can no longer animate the offset, so even though I have a time loop going I can’t actually move anything.

I did find this on the forums and I’m trying to replicate it but I’m still running into the same issue.

Any suggestions on what I’m doing wrong and how to fix it?