O jogo esta funcionando normalmente, mas quando a bolinha vem e bate na quina da raquete, ela atravessa a raquete e logo em seguida a borda, a bola desaparece e reaparece voltando como se tivesse colidindo em algo que não vemos fora do cenário.
CODIGO FONTE:
// variaveis referente a bolinha; let xBolinha = 300; let yBolinha = 200; let diametroBolinha = 20; let raioBolinha = diametroBolinha / 2;
// variaveis referente a velocidade da bolinha; let velocidadeXBolinha = 10; let velocidadeYBolinha = 10;
// variaveis referente a raquete; let xRaquete = 10; let yRaquete = 150; let comprimentoRaquete = 10; let alturaRaquete = 100;
// variaveis refernte a velocidade da minha raquete;
let velocidadeMinhaRaquete = 10;
function setup() { createCanvas(600, 400); }
function draw() { background(0); mostraBolinha(); velocidadeBolinha(); verificaColisao(); mostraRaquete(); movimentaMinhaRaquete(); verificaColisaoMinhaRaquete(); }
function mostraBolinha(){ circle(xBolinha, yBolinha, diametroBolinha); }
function velocidadeBolinha(){ xBolinha += velocidadeXBolinha; yBolinha += velocidadeYBolinha; }
function verificaColisao(){ if(xBolinha + raioBolinha > width || xBolinha - raioBolinha < 0){ velocidadeXBolinha *= -1; } if (yBolinha + raioBolinha > height || yBolinha - raioBolinha < 0){ velocidadeYBolinha *= -1; } }
function mostraRaquete(){ rect (xRaquete, yRaquete, comprimentoRaquete, alturaRaquete); }
function movimentaMinhaRaquete(){ if(keyIsDown(UP_ARROW)){ yRaquete -= velocidadeMinhaRaquete; }
if(keyIsDown(DOWN_ARROW)){ yRaquete += velocidadeMinhaRaquete; } }
function verificaColisaoMinhaRaquete(){ if(xBolinha - raioBolinha < xRaquete + comprimentoRaquete && yBolinha + raioBolinha > yRaquete && yBolinha - raioBolinha < yRaquete + alturaRaquete){ velocidadeXBolinha *= -1; } }