Your game is evolving nicely!
The first thing I noticed however is that the player jitters when moving. I suspect this might be caused either by sub pixel movement or inconsistent sprite origins? It's very distracting and you should probably look into fixing it.
Did you tweak the levels since the last demo? They feel a little more smarter. I still don't think they make use of the enemy's abilities enough yet, but it's getting there. I also like seeing that you need to use Whimp's float once in a while. I suggest maybe only allowing Whimp himself float? It's be interesting because you would need to leave your protective shell in order to progress which might also help regulate pacing.
I posted this in the thread but I'll just copy and paste it here too: Also if I have FRAPS recording or OBS running, the game maintains 60fps, but if I don't, the framerate fluctuates between 50 and 51, causing a lot of timing related bugs and issues. Unfortunately I can't show you because if I record, the framerate goes back up to 60 and the problems are fixed. I've never seen Game Maker do this in regards to the fluctuating framerate, but it may be out of your control. Still might be worth looking into?
Not sure if this is a bug or not, but if you stand on top of a cannon, you'll still get hurt by it. Also I'd recommend destroying instances of cannon balls if they're off screen, as they can come and hit you if you don't move at the start of the level they're introduced in (forgot which one).
Oh and one more minor nitpick: There's something about using both the Z and X buttons along with space. My brain cannot comprehend both as it's like using two separate control schemes at once. Maybe use Z X C instead? Or maybe I'm just nuts? Probably the latter.
Also I hear those default FL Studio percussion instruments. You can't fool me! I kinda want to make fan music so I think I'll go do that.
Overall it's a good improvement and I love watching this take shape. Keep pushing on,
Anon (sorry, habit)! You have potential!