Como não quis copiar da biblioteca do Github o código para a colisão da bolinha tive mais dificuldade para finalizar, mas meu código ficou assim até o momento:
https://editor.p5js.org/jess-asilva/sketches/ugVgffEBo
// variáveis da Bolinha let xBolinha = (300); let yBolinha = (200); let diametro = (20); let raio = diametro / 2;
// variáveis da Raquete let xRaquete = (5); let yRaquete = (140); let larguraRaquete = (10); let comprimentoRaquete = (100);
//variáveis da Raquete do Oponente let xRaqueteOponente = (585); let yRaqueteOponente = (140);
// velocidade da Bolinha let velocidadeXBolinha = 3; let velocidadeYBolinha = 3;
// placar do jogo let meusPontos = 0 let pontosDoOponente = 0
function setup() { createCanvas(600, 400); }
function draw() { background(20); desenhoBolinha (); movimentaBolinha (); verificaColisaoBorda (); desenhoRaquete (xRaquete, yRaquete); movimentaMinhaRaquete (); colisaoRaquete (); desenhoRaquete (xRaqueteOponente, yRaqueteOponente); movimentaRaqueteOponente (); colisaoRaqueteOponente (); mostraPlacar (); marcaPontos (); }
function desenhoBolinha () { 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 desenhoRaquete (x,y) { rect (x, y, larguraRaquete, comprimentoRaquete); }
function movimentaMinhaRaquete () { if (keyIsDown (UP_ARROW)) { yRaquete -= 10 }
if (keyIsDown (DOWN_ARROW)) { yRaquete += 10 } }
function colisaoRaquete () { if (xBolinha - raio < xRaquete + larguraRaquete && yBolinha + raio > yRaquete && yBolinha - raio < yRaquete + comprimentoRaquete) { velocidadeXBolinha *= -1 } }
function colisaoRaqueteOponente () { if (xBolinha + raio > xRaqueteOponente && yBolinha + raio < yRaqueteOponente + comprimentoRaquete && yBolinha + raio > yRaqueteOponente) { velocidadeXBolinha *= -1 } }
function movimentaRaqueteOponente () { yRaqueteOponente = yBolinha - comprimentoRaquete / 2 - 30 }
function mostraPlacar () { fill (255) text (meusPontos, 258,26) text (pontosDoOponente, 341, 26) }
function marcaPontos () { if (xBolinha > 590) { meusPontos += 1; } if (xBolinha < 10) { pontosDoOponente += 1; } }
Foi uma experiência muito desafiante. Estou feliz por ter conseguido.