It's very choppy on phone when bursting, animation looks awesome but need some optimisation I guess.
1. Rather than waiting for the game engine update callback, I handle touch/mouse input immediately (required by SpeechSynthesis) so multiple input events can trigger before the game engine cleans up a destroyed object (fish).
2. I incremented score synchronously but marked a fish as destroyed asynchronously so there was a window where another click on the fish could occur.
Thanks again!
One time I ended up hitting a bug where the new level would start while an extra fish from the previous level was still there. If anybody figures out a way to reproduce this, please share!
For speed tappers who don’t need the number to be announced, I made it possible to mute the announcements.
(I didn't know the goal/purpose of the game at that time, so I just clicked through, hoping for something to change)