Estou com uma dificuldade em meu código que não consigo enxergar, minha bolinha está travada e tremendo no centro, lembrando que estou apenas com a velocidadeXBolinha ligada, caso eu descomente a velocidadeYBolinha ela treme e fica indo para cima e para baixo, segue código
//variáveis da bolinha let xBolinha = 300; let yBolinha = 200; let diametro = 15; let raio = diametro / 2;
//velocidade da bolinha let velocidadeXBolinha = 2; let velocidadeYBolinha = 6; let comprimentoRaquete = 10; let alturaRaquete = 90;
//variaveis da raquete let xRaquete = 5; let yRaquete = 150;
//variaveis do oponente
let xRaqueteOponente = 585; let yRaqueteOponente = 150; let velocidadeYOponente = 5;
function setup() { createCanvas(600, 400); }
function draw() { background(0); mostraBolinha(); movimentaBolinha(); verificaColisaoBorda(); mostraRaquete(xRaquete, yRaquete); moveRaquete(); colisaoBolinhaRaquete(); mostraRaquete(xRaqueteOponente, yRaqueteOponente); movimentaRaqueteOponente(); colisaoBolinhaRaqueteOponente()
}
function mostraBolinha() { circle(xBolinha, yBolinha, diametro) }
function movimentaBolinha() { xBolinha += velocidadeXBolinha; //yBolinha += velocidadeYBolinha; }
function verificaColisaoBorda(x, y) { if (x, y, xBolinha + raio > width || xBolinha - raio < 0) { velocidadeXBolinha *= -1; } if (yBolinha + raio > height || yBolinha - raio < 0) { velocidadeYBolinha *= -1; } }
function mostraRaquete(x,y) { rect(x, y, comprimentoRaquete, alturaRaquete); }
function moveRaquete(){ if (keyIsDown(UP_ARROW)){ yRaquete -= 10; } if(keyIsDown(DOWN_ARROW)){ yRaquete += 10; } }
function colisaoBolinhaRaquete() { if (xBolinha - raio < xRaquete + comprimentoRaquete && yBolinha - raio < yRaquete + alturaRaquete && yBolinha + raio > yRaquete) { velocidadeXBolinha *= +1; }
}
function movimentaRaqueteOponente() { velocidadeYOponente = yBolinha - yRaqueteOponente - comprimentoRaquete / 2 - 30; yRaqueteOponente += velocidadeYOponente
}
function colisaoBolinhaRaqueteOponente() { if (xBolinha - raio < xRaqueteOponente + comprimentoRaquete && yBolinha - raio < yRaqueteOponente + alturaRaquete && yBolinha + raio > yRaqueteOponente) { velocidadeXBolinha *= -1; } }