Alguém poderia me explicar por que quando eu escrevi :
ybolinha + raio > yRaquete + alturaRaquete
A bolinha ficava atravessando a Raquete.
Alguém poderia me explicar por que quando eu escrevi :
ybolinha + raio > yRaquete + alturaRaquete
A bolinha ficava atravessando a Raquete.
Olá João! Tudo bem?
A função que foi passada em aula, você passa dois parâmetros nela, x e y. Ela verifica a colisão com as duas raquetes.
A função ficou assim:
function colisaoMinhaRaqueteBiblioteca(x,y){ colidiu = collideRectCircle(x, y, comprimentoRaquete, alturaRaquete, xBolinha, yBolinha, raioBolinha); if (colidiu){ velocidadeXBolinha *= -1; raquetada.play(); } }
Na hora de chamar essa função, você tem que se atentar nos parâmetros que vai colocar. Quando chamar a função, ela deve ficar desse jeito:
colisaoMinhaRaqueteBiblioteca(xRaquete, yRaquete); colisaoMinhaRaqueteBiblioteca(xRaqueteOponente, yRaqueteOponente);
Perceba que a primeira chamada, a gente passa o x e y da nossa raquete. Na segunda, colocamos o x e y da raquete do oponente.
Acredito que com essas alterações, deva funcionar seu código.
Obs.: Lembrando que você tem que baixar o arquivo com o código de colisão (p5.collid2d.js) e chama-lo no index.
Espero ter ajudado.