So what's the situation?
System-wise I wrote a stub for a system to handle successive events during gameplay, basically a queue of elements containing a starting script, an ending script and an end condition. Script is a loose term here which could mean either an external script function or an internal function. Right now it only supports the latter since I have no scripting system yet.
The point here is to have a structured, data-driven way to configure chains of events during gameplay such as "Spawn 10 enemies of type A; When player defeats all, spawn 15 enemies of type B; when player defeats 5 of these, spawn boss enemy; etc."
I wrapped up my work on the vehicle components and made some tweaks to the enemy behaviors. Now, with a combination of seek, cohesion and separation, they move as a loose group trying to find a position half a screen away from the player, where they bomb away. Gameplay-wise this is ok; I can see enemies behaving this way, so I'll treat them as done. The next step here would be to add different kinds of enemies.
So, that's that. You can download a working copy of the program here, if you want to toy around with its current state. If I'm not going to update in a while I might as well show it. This does not constitute a second prototype because it still is flawed compared to P1 (there's no hud elements, the background is flat, and the program fails if the player dies.) Most of the changes are internal.
Thanks for interest shown. I'll be back soon.
Edit: Fixed above working copy so that the game does not fail if player dies.