This only spawns health for the first enemy
Well, no. Not really.
It is 'Trigger once while true' not 'Trigger once'.
It triggers once when the event containing that 'Trigger once while true' is true.
When it is the only condition in that event it will trigger only that one time ... that it self runs as being true.
And one would think that this event (containing no more conditions) cant be set to false again (actually resetting the trigger).
That is true when it is a root event.
But, mind the logic, this true/false has (as every variable does) a scope.
(read about scopes --->https://www.scirra.com/manual/83/variables)
Is it a root event, then the scope is the big tick loop.
Bring it in a sub loop, and the scope is that loop. It will actually reset each iteration.
I know that this make it worthless in a loop.