You had the idea down correctly, but you need to add in a condition System | For each ship in event two. Otherwise it will just pick the first instance.
C2 will pick every instance of the object when that object is specified in an event, but because the ship is the target of an action (not the initiator, if that makes sense - I'm not sure what the technical term is), then only a single instance is picked. By adding For each to the conditions, you're telling C2 to perform the whole event a single time for every instance of the ship.
I hope that makes sense. It's slightly confusing thing at first but once you understand how it works, it'll make the very powerful picking system putty in your hands.