В программировании игр вам часто нужно думать более математически, чем визуально.
Сначала ваш корабль непрерывно оставляет след на экране? Если да, тогда будет легче узнать, когда форма закроется: вам просто нужно запомнить координату, где ваш корабль начал покидать след, а затем подождать, пока след приблизится к этой координате в другой раз (например, в радиусе 10 пикселей, иначе пользователю нужно быть очень точным, чтобы попасть точно в один и тот же пиксель, чтобы закрыть форму).
Визуальное представление трассы доступно только пользователю, вы никогда не будете использовать его для вычисления чего-либо. Что вы будете делать, так это сохранить в памяти путь, по которому идет след корабля: многоугольник, представляющий собой не что иное, как список координат, которым он следовал.
Затем, когда вы узнаете, что ваша фигура закрыта, вы должны определить, находится ли объект внутри вашего многоугольника или нет. Вполне возможно, что target-c или cocos2d (я не знаю много об этом) уже содержит встроенную функцию, чтобы узнать, находится ли точка внутри многоугольника. В Java есть класс Polygon, который делает это действительно легко. Если вы не нашли ничего, что могли бы сделать сами, на SO уже есть отличные ответы по этому вопросу, вот хороший: Как я могу определить, находится ли 2D-точка в многоугольнике?