Oi, Wagner! Tudo bem?
Podemos notar no código que a função verificaColisaoRaquete
está sendo definida duas vezes ao longo do código, entretanto com comandos diferentes e ambas as funções, que são distintas mas apresentam o mesmo nome, estão sendo chamadas na function draw
, atrapalhando o resultado final do jogo.
Dessa forma, para resolvermos esse problema basta comentarmos dentro da function draw
o comando que chama a função verificaColisaoRaquete()
que não recebe parâmetros, pois essa função se refere à função que não possui o auxilio do comando collideRectCircle
e que possui comandos direcionados apenas para uma das raquetes. Deixaremos, então, a function draw
da seguinte maneira:
function draw() {
background(0);
mostraBolinha();
movimentaBolinha();
verificaColisaoBorda();
mostraRaquete(xRaquete, yRaquete);
movimentaMinhaRaquete();
//verificaColisaoRaquete();
verificaColisaoRaquete(xRaquete, yRaquete);
mostraRaquete(xRaqueteOponente, yRaqueteOponente);
movimentaRaqueteOponente();
verificaColisaoRaquete(xRaqueteOponente, yRaqueteOponente);
incluiPlacar();
marcaPonto();
}
Espero ter ajudado na compreensão do problema. Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Caso este post tenha te ajudado, por favor, marcar como solucionado ✓