I'm going to fix it, but I'm going to change a few things around if thats alright with you. Because at this point, it's too messy for me to do anything with it. I'll probably use GML coding for most of it, but I'll put detailed comments in it to help you understand.
Edit:
OK It's done. I changed alot on it, but it does the exact same thing. It's just way more organized now. I made it use less objects to get the job done. It no longer needs the wall object because I set the ship and enemy limit by room size and whatnot. The problem you were running into with the variable "win" is that you made each object (ship,enemy,winner) have their own variable called "win". This made it so that each could only add up to one, rather than having on variable that could possibly add up to five. An easy way around this is using global variables. I didn't use any in this example because they can get difficult to remember, and use up game memory. So I just gave the object "Winner" the variable "win" and all other objects that read the variable read it from object "Winner". Now all you have to do is make a graphic for "You Win" and put it in the object "Winner". If you need a better explanation of this, I'll be here.
Also I changed the health system. You no longer need multiple objects to display the hp. There is only one object and one hp variable. The object I made draws health for up to 5 health points if you want to use more. The new object is called "Hp_Drawer" and the hp for the ship is managed by it. So when referring/setting the hp for the ship use "Hp_Drawer.hp = #".
If you need help with any of the changes I've made, read the comments in the pieces of code or just ask me in this topic. Oh and here's a plus! The file size went down!