ID:2429806
 
(See the best response by Ter13.)
Code:


Problem description:

I've been trying to figure out a way to set the direction of an atom while it moves via built-in tile gliding, however when it changes directions it stutters by fast-forwarding the glide to its final position.

I've tried directly setting the dir via dir = NORTH or whatever, and also sending an animate call. Is there something I'm doing wrong?

Best response
Turn off FORWARD_STEPS. You want to use SLIDE_STEPS as the value of animate_movement.

The other thing is that changes to direction may interrupt an ongoing slide. You need to call Move() with the Dir argument set to the locked chosen direction, rather than changing the direction after the Move() is called.

If you show your existing code that doesn't work, I can point out where the problem is happening. Otherwise, try the above.
In response to Ter13
Ter13 wrote:
Turn off FORWARD_STEPS. You want to use SLIDE_STEPS as the value of animate_movement.

The other thing is that changes to direction may interrupt an ongoing slide. You need to call Move() with the Dir argument set to the locked chosen direction, rather than changing the direction after the Move() is called.

If you show your existing code that doesn't work, I can point out where the problem is happening. Otherwise, try the above.

Holy shit you're a lifesaver. This fixed like 10 other issues I had. I thought animate_movement was just a true or false value, thanks a ton!