Quando utilizo o código importado da biblioteca e ocorre a colisão da bolinha com a minha raquete ela fica presa entre a borda e a minha raquete, mesmo descendo ou subindo a raquete a bolinha não volta mais ao jogo, fica somente subindo e descendo na distância x (xBolinha=5). Quando utilizo o código verificaColisaoRaquete feito sem a biblioteca funciona certinho, teve um post que o amigo que tentou ajudar disse que era pra não deixar verificaColisaoRaquete comentado, mas daí não faria sentido importar a solução...
//variáveis da Bolinha
let xBolinha = 300;
let yBolinha = 200;
let dDiametro= 15;
//variáveis da velocidade da Bolinha
let velocidadeXBolinha = 2;
let velocidadeYBolinha = 2;
let raio = dDiametro / 2;
//variáveis da Raquete
let xRaquete = 5;
let yRaquete = 150;
let wRaquete = 10;
let hRaquete = 90;
let colidiu = false;
//variáveis da Raquete do Oponente
let xRaqueteOponente = 585;
let yRaqueteOponente = 150;
//variáveis Raquete do Oponente
let velocidadeXRaqueteOponente;
let velocidadeYRaqueteOponente;
function setup() {
createCanvas(600, 400);
}
function draw() {
background(0);
mostrarBolinha();
velocidadedaBolinha();
verificaColisaoBolinha();
mostrarRaquete(xRaquete, yRaquete);
mostrarRaquete(xRaqueteOponente, yRaqueteOponente);
movimentarRaquete();
movimentaRaqueteOponente();
//verificaColisaoRaquete();
verificaColisaoRaqueteBiblioteca();
}
function mostrarBolinha() {
circle(xBolinha, yBolinha, dDiametro);
}
function velocidadedaBolinha() {
xBolinha += velocidadeXBolinha;
yBolinha += velocidadeYBolinha;
}
function verificaColisaoBolinha() {
if (xBolinha + raio > width ||
xBolinha - raio < 0) {
velocidadeXBolinha *= -1;
}
if (yBolinha + raio > height ||
yBolinha - raio < 0){
velocidadeYBolinha *= -1;
}
}
function mostrarRaquete(x, y) {
rect(x, y, wRaquete, hRaquete);
}
function movimentarRaquete() {
if(keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if(keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
}
}
function movimentaRaqueteOponente() {
velocidadeYRaqueteOponente = yBolinha - yRaqueteOponente - wRaquete /2 - 30;
yRaqueteOponente += velocidadeYRaqueteOponente;
}
function verificaColisaoRaquete() {
if (xBolinha - raio < xRaquete + wRaquete
&& yBolinha - raio < yRaquete + hRaquete
&& yBolinha + raio > yRaquete) {
velocidadeXBolinha *= -1;
}
}
function verificaColisaoRaqueteBiblioteca() {
colidiu =
collideRectCircle(xRaquete, yRaquete, wRaquete, hRaquete, xBolinha, yBolinha, raio);
if (colidiu)
velocidadeXBolinha += -1;
}
Alguém consegue ajudar?