Fiz a função MovimentaRaqueteOponente e a bolinha está passando pelas duas raquetes.
let xBolinha = 300; let yBolinha = 200; let diametro = 25; let raio = diametro/2;
//velocidade da bolinha let velocidadexBolinha = 3; let velocidadeyBolinha = 3;
//variáveis da raquete
let xRaquete = 5; let yRaquete = 150; let raqueteComprimento = 10; let raqueteAltura = 90;
//variaveis do oponente
let xRaqueteOponente = 585; let yRaqueteOponente = 150; let velocidadeyOponente;
let colidiu = false;
function setup() { createCanvas(600, 400); }
function draw() {
background(0); mostraBolinha(); movimentaBolinha(); mostraRaquete(xRaquete, yRaquete); movimentaMinhaRaquete(); verificaColisaoBorda(); verificaColisaoRaquete(); verificaColisaoRaquete(xRaquete, yRaquete); colisaoMinhaRaqueteBiblioteca(); mostraRaquete(xRaqueteOponente, yRaqueteOponente); movimentaRaqueteOponente(); verificaColisaoRaquete(xRaqueteOponente, yRaqueteOponente);
function mostraBolinha(){ circle(xBolinha, yBolinha, diametro); }
function movimentaBolinha(){ xBolinha += velocidadexBolinha; yBolinha += velocidadeyBolinha; }
function verificaColisaoBorda (){ if (xBolinha + raio >width || xBolinha - raio <0){ velocidadexBolinha *= -1;
} if (yBolinha + raio > height || yBolinha - raio <0){ velocidadeyBolinha *= -1; } }
function mostraRaquete (x,y){ rect (x, y, raqueteComprimento, raqueteAltura); }
function movimentaMinhaRaquete(){ if (keyIsDown(UP_ARROW)) yRaquete -= 10;
if (keyIsDown (DOWN_ARROW)) yRaquete += 10; }
function verificaColisaoRaquete(){ if (xBolinha - raio < xRaquete + raqueteComprimento && yBolinha - raio < yRaquete + raqueteAltura && yBolinha + raio > yRaquete){ velocidadexBolinha *= -1; } }
function movimentaMinhaRaquete(){ if (keyIsDown(UP_ARROW)) yRaquete -= 10;
if (keyIsDown (DOWN_ARROW)) yRaquete += 10;
}
function colisaoMinhaRaqueteBiblioteca(){ colidiu; (xRaquete, yRaquete, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio) if (colidiu){ velocidadexBolinha *= -1; } }
function verificaColisaoRaquete(x, y){ colidiu; (x, y, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio) if (colidiu){ velocidadexBolinha *= -1;
}
}
function movimentaRaqueteOponente(){ velocidadeyOponente = yBolinha - yRaqueteOponente - raqueteComprimento /2 -30 yRaqueteOponente += velocidadeyOponente } }