Yes, good question!
At the beginning the idea was that you could only kill with the rocks, and at the start of the game you'd had no problem just throwing rocks to the bats, but in the next wave you would be forced to use the bubbles, because when "bubbled" the enemies die with just 1 rock, the other way you'd run out of rocks and wouldn't be able to kill all bats.
Also, at the last wave even using just 1 rock per bat wouldn't have been enough. That's because I was thinking of introducing a "ricochet" mechanic, where if a bubble is popped with a rock and there is another bubble close to it, the rock would bounce popping all of them with no limits.
But as you can see that wasn't finally implemented, mainly because of 2 reasons:
1. I simply ran out of time to develop it.
2. I didn't like the idea of loosing because you run out of rocks. Is kinda weird that you get a game over screen because of that, but I didn't come up with a good idea on how to make the player loose. Also it could be kinda frustrating to simply make the game unbeatable with no rocks and let the player have to discover it without a warning or directly getting a game over. I didn't see it.
That would be the reason why now there are two attacks, I simply let the rocks exist after discarding the other ideas. Thank you for the comment!