Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Parece que tem uma raquete invisível .Alguém me ajuda por favor obrigado.

Na frente da raquete parece tem tem outra invisível, não consigo arrumar, por favor onde esta meu erro, obrigado! //variáveis da bolinha. let xBolinha = 300; let yBolinha = 200; let diametro = 25;

//velocidade da bolinha. let velocidadeXBolinha = 6; let velocidadeYBolinha = 6; let raio = diametro / 2;

//variáveis da raquete let xRaquete = 5 let yRaquete = 150 let comprimentoRaquete = 10 let raqueteAltura= 110

function setup() { createCanvas(600, 400); }

function draw() { background(0); mostraBolinha(); movimentaBolinha(); colisaoBordas(); mostraRaquete(); movimentaMinhaRaquete(); colisaoComMinhaRaquete()

} function mostraBolinha(){ circle(xBolinha ,yBolinha ,diametro)

}

function movimentaBolinha(){ xBolinha += velocidadeXBolinha; yBolinha += velocidadeYBolinha; }

function colisaoBordas(){ if (xBolinha +raio > width || xBolinha -raio < 0) { velocidadeXBolinha *= -1;

} if(yBolinha + raio > height || yBolinha - raio < 0){ velocidadeYBolinha *= -1;

} }

function mostraRaquete() { rect(xRaquete, yRaquete,comprimentoRaquete, raqueteAltura); } function movimentaMinhaRaquete(){

if(keyIsDown(UP_ARROW)){ yRaquete -= 10;

} if(keyIsDown(DOWN_ARROW)){ yRaquete += 10; } } function colisaoComMinhaRaquete(){

if(xBolinha - raio < xRaquete + raqueteAltura && yBolinha - raio <yRaquete + raqueteAltura && yBolinha + raio > yRaquete){

velocidadeXBolinha *= -1;

}

}

2 respostas
solução!

Na sua função de colisão com a raquete, onde deveria estar comprimentoRaquete estava raqueteAltura.

Alterando isso ela fica assim:

function colisaoComMinhaRaquete(){
    if(xBolinha - raio < xRaquete + comprimentoRaquete && yBolinha - raio < yRaquete + raqueteAltura && yBolinha + raio > yRaquete){
    velocidadeXBolinha *= -1
    }
}

Acho que isso resolve este problema!

Obrigado, deu certo!