Fiz a programação da colisão da bolinha com a raquete no eixo X e até então o programa estava conforma o da aula, porém após programar a condicional de colisão em relação a posição da raquete no eixo Y a bolinha deixou de considera a colisão no eixo X, passando diretamente pela raquete, revi o código varias vezes mas não achei o erro, podem me ajudar? Segue abaixo o programa:
//Parametrôs relacionados a Bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametroBolinha = 15;
let raioBolinha = diametroBolinha/2
//Parametrôs relacionados a velocidade da Bolinha
let velocidadeBolinhaX = 2
let velocidadeBolinhaY = velocidadeBolinhaX
//Parametrôs relacionados a raquete
let xRaquete = 5
let yRaquete = 150
let comprimentoRaquete = 10
let alturaRaquete = 120
function setup() {
createCanvas(600,400);
}
function draw() {
background(0);
criaBolinha();
moveBolinha();
colisaoBolinha();
criaRaqueteMinha();
moveRaqueteMinha();
colisãoBolinhaMinhaRaquete();
}
function criaBolinha(){
circle (xBolinha,yBolinha,diametroBolinha)
}
function moveBolinha(){
xBolinha+=velocidadeBolinhaX
yBolinha+=velocidadeBolinhaY
}
function colisaoBolinha(){
if(xBolinha+raioBolinha>width||
xBolinha-raioBolinha<0){
velocidadeBolinhaX*=-1;
}
if(yBolinha+raioBolinha>height||
yBolinha-raioBolinha<0){ velocidadeBolinhaY*=-1;
}
}
function criaRaqueteMinha(){
rect(xRaquete, yRaquete, comprimentoRaquete,alturaRaquete)
}
function moveRaqueteMinha(){
if(keyIsDown(UP_ARROW)){
yRaquete -=10;
}
if(keyIsDown(DOWN_ARROW)){
yRaquete +=10;{
}
}
}
function colisãoBolinhaMinhaRaquete(){
if(xBolinha-raioBolinha<xRaquete+comprimentoRaquete
&& yBolinha-raioBolinha>yRaquete+comprimentoRaquete
&& yBolinha+raioBolinha<yRaquete){
velocidadeBolinhaX*=-1;
}
}