Easiest way would be to use a one shot trigger. One shots start up once their corresponding flag is set, go through their animation sequence, and then stop once they reach the last frame. To fire it, just set the bit in $7FC0F8-$7FC0FB corresponding to the trigger you pick (bit 0 of $7FC0F8 is trigger 0, bit 1 is trigger 1, etc.).
Alternatively, you can use a manual trigger and directly control the animation while Mario is touching the block. In that case, $7FC070 + trigger ID holds the current frame for the animation.
, this all said, there is a big drawback to using ExAnimation for this purpose. That issue is that the ExAnimation will apply to all instances of the tile at the same time
. In other words, if you have two of these launch blocks on the same screen, then bouncing on one will show the bounce animation for both, even if you didn't touch the second block.
The solution that SMW uses for this is bounce sprites
to handle the animation. These basically just replace the block temporarily to handle the animation; this way, it only handles to the particular block spawning the bounce sprite. You can add custom ones via this patch
, though it will take a bit of work to set up.
Professional frame-by-frame time wizard. YouTube
- SMW Glitch List
- SMW Randomizer