Olá, estou com este problema onde o placar sempre soma, mesmo quando bate na minha raquete. Segue o link do código: https://editor.p5js.org/Rodrigo745/sketches/BqiF9OoRK
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, estou com este problema onde o placar sempre soma, mesmo quando bate na minha raquete. Segue o link do código: https://editor.p5js.org/Rodrigo745/sketches/BqiF9OoRK
Oi Rodrigo, tudo bem contigo?
Analisando seu código, pude perceber que o problema está na função verificacolisaoraquete() onde você está multiplicando a posição da bola (xBolinha) por -1 quando ocorre uma colisão com a raquete. Isso faz com que a bola inverta a direção em vez de refletir na raquete.
Para corrigir isso, você pode alterar a linha de código xBolinha *= -1; para velocidadexBolinha *= -1;. Dessa forma, em vez de inverter diretamente a posição da bola, você está invertendo a velocidade horizontal (velocidadexBolinha), o que fará com que a bola mude de direção corretamente.
Aqui está a função verificacolisaoraquete() corrigida:
function verificacolisaoraquete(x, y) {
if ((xBolinha - raio < x + largura) && (yBolinha - raio < y + altura) && (yBolinha + raio > y)) {
velocidadexBolinha *= -1;
}
}
Dessa forma o problema deverá ser solucionado.
Espero ter ajudado!
Caso tenha dúvidas, fico à disposição.
Abraços e bons estudos!
Muito obrigado!