OK, if this is your goal, I would recommend a different approach. Instead of defining the end positions all at once, you can make a sort of game update loop.
- Update position based on movement vector
- Update movement vector based on hit detection
You can do this with the global transform patch since it allows you to read values from objects. It can be a null object, so you can read and write values to that and then apply that to something like rect position.
Of course, I know how all of this should work… but it doesn’t. I made a test project with this logic and it gets stuck on the edges and the position value won’t update. I’m attaching the project because I feel like it could be useful if we just solve the reactive weirdness. I’m guessing doing the old patch to script to patch would work more reliably than reading the values from global position.
spark-dvd.arexport (33.3 KB)
Maybe I’ll try again later, but here’s this project in case it helps. In any case, I think both of these projects need a similar solution. You can send the loop animation completed pulse to script land, then send it back to patches. This will get it out of the reactive loop so the cycle can be introspective.