Simply understanding `animate()` proc

animate(thing, pixel_x = 10, time = 10)

thing is moved to pixel_x:10 point, but arbitrary. Actual thing.pixel_x is the same before.


animate(thing, pixel_x = 10, time = 10)
animate(pixel_y = 10, time = 10)

After the thing is moved to pixel_x:10, it will be moved to pixel_y:10.
Which means this is a chain sequence (because first argument wasn’t given)


animate(thing, pixel_x = 10, time = 10)
animate(thing, pixel_y = 10, time = 10)

Two movement things will be done at the same time.
the difference from the above one is that it has “thing” at both of those.


animate(thing, pixel_x = 10, time = 10, flags = ANIMATION_RELATIVE)
animate(thing, pixel_y = 10, time = 10)

ANIMATION_RELATIVE flag will immediately save the result to the thing
After the first animate, thing.pixel_x will become 10 permanently.