2D Screen Wrapping

I’d probably create a duplicate ship that, when you cross the edge of the screen, appears from the opposite side of screen and once the original ship leaves the screen entirely it is destroyed and this new ship becomes the main one. In this approach, you register hits from both instances of your ship.

You’ll probably have to do this for each object that can cross screen border (e.g. does not move strictly vertically).