Olá Cesar, tudo bem? Espero que sim!
Uma forma de resolver esse problema é definir uma posição fixa para o avião ao reiniciar o jogo. Você pode fazer isso modificando a linha de código "this.transform.position = this.posicaoInicial;" no método Reiniciar().
Em vez de atribuir a posição inicial atual do avião, você pode definir uma posição fixa para o avião reiniciar. Por exemplo, você pode criar uma variável Vector3 chamada "posicaoFixa" e definir as coordenadas X, Y e Z dessa posição. Em seguida, você atribui essa posição fixa ao avião no método Reiniciar().
Aqui está um exemplo de como você pode fazer isso:
public Vector3 posicaoFixa;
void Reiniciar()
{
this.transform.position = posicaoFixa;
// Restante do código para reiniciar o jogo
}
Dessa forma, o avião sempre reiniciará na posição fixa que você definir, independentemente da sua última posição antes da colisão.
Espero ter ajudado!
Caso tenha dúvidas, fico à disposição.
Abraços e bons estudos!