O lado do oponetente marca 1 ponto e depois disso, mesmo batendo na borda não contabiliza mais. Do outro lado está funcionando tudo normalmente.
O lado do oponetente marca 1 ponto e depois disso, mesmo batendo na borda não contabiliza mais. Do outro lado está funcionando tudo normalmente.
Olá, Pedro!
Pelo que você descreveu, parece que o problema está na função marcaPonto()
. Nela, você está verificando se a bolinha atingiu as bordas da tela para incrementar os pontos dos jogadores.
Aqui está a função que você deve ter no seu código:
function marcaPonto() {
if (xBolinha > 590) {
meusPontos += 1;
}
if (xBolinha < 10) {
pontosDoOponente += 1;
}
}
Nesse caso, quando a posição X da bolinha é maior que 590, um ponto é adicionado aos seus pontos (meusPontos
). Quando a posição X da bolinha é menor que 10, um ponto é adicionado aos pontos do oponente (pontosDoOponente
).
Se o lado do oponente está marcando um ponto e depois disso não contabiliza mais, mesmo com a bolinha batendo na borda, pode ser que a posição X da bolinha não esteja sendo corretamente resetada após marcar o ponto.
Uma solução possível seria verificar se a bolinha atingiu a borda e, nesse caso, resetar sua posição para o centro da tela. Por exemplo:
function marcaPonto() {
if (xBolinha > 590) {
meusPontos += 1;
xBolinha = 300; // resetando a posição X da bolinha
}
if (xBolinha < 10) {
pontosDoOponente += 1;
xBolinha = 300; // resetando a posição X da bolinha
}
}
Dessa forma, após marcar um ponto, a bolinha voltará para o centro da tela e o jogo continuará normalmente.
Espero ter ajudado e bons estudos!