não consigo fazer a bolinha colidir do jeito certo com as bordas sem ter que dividir o raio por 2. Também não consigo fazer com que a bolinha colida com a raquete, é como se ela reconhecesse que a raquete está um pouco a frente. Não sei se a duvida ficou clara, mas preciso muito de ajuda.
//variáveis da bolinha
let xBolinha = 300;
let yBolinha = 200;
let raio = 20;
//variáveis da velicide da bolinha
let velocidadeXDaBolinha = 5;
let velocidadeYDaBolinha = 6;
//varáveis da raquete
let xRaquete = 5;
let yRaquete = 150;
let larguraRaquete = 10;
let alturaRaquete = 90;
function setup() {
createCanvas(600, 400);
}
function desenhaBolinha() {
circle(xBolinha, yBolinha, raio);
}
function movimentaBolinha() {
xBolinha += velocidadeXDaBolinha;
yBolinha += velocidadeYDaBolinha;
}
function verificaBorda() {
if (xBolinha + raio / 2 > width || xBolinha - raio / 2 < 0) {
velocidadeXDaBolinha *= -1;
}
if (yBolinha + raio / 2 > height || yBolinha - raio / 2 < 0) {
velocidadeYDaBolinha *= -1;
}
}
function mostraRaquete() {
rect(xRaquete, yRaquete, larguraRaquete, alturaRaquete);
}
function movimentaRaquete() {
if (keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if (keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
}
}
function vericaColisaoRaquete() {
if(xBolinha - raio < xRaquete + alturaRaquete)
{
velocidadeXDaBolinha *= -1;
}
}
function draw() {
background(0);
desenhaBolinha();
movimentaBolinha();
verificaBorda();
mostraRaquete();
movimentaRaquete();
vericaColisaoRaquete();
}
`