1
resposta

[Dúvida] Não gera colisão da bolinha com a raquete

https://editor.p5js.org/beatricy/sketches/4aXuYsHvO

já tentei de tudo, coloquei outros códigos aqui no fórum mas mesmo assim não gera a colisão

1 resposta

Oi, Rafaela

Eu só removi o que estava repetido e desnecessário

A Colisão da bolinha com a raquete está funcionando

  • sketch.js
// variaves da bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametro = 15;
let raio = diametro / 2 ;
let velocidadeXBolinha = 6;
let velocidadeYBolinha = 6;

//variáveis da raquete
let raqueteComprimento = 10;
let raqueteAltura = 80;
let raqueteOponenteComprimento = 10;
let raqueteOponenteAltura = 80;
let xRaquete = 5;
let yRaquete = 150;
let xRaqueteOponente = 586;
let yRaqueteOponente = 150;

let colidiu = false;

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

function draw() {
  background(0);     
  rect(xRaquete, yRaquete, raqueteComprimento, raqueteAltura)
  rect(xRaqueteOponente, yRaqueteOponente, raqueteOponenteComprimento, raqueteOponenteAltura);
  circle(xBolinha, yBolinha, diametro);
  movimentaBolinha ();
  verificaColisaoBorda ();
  movimentaMinhaRaquete();
  movimentaRaqueteOponente();
  colisaoMinhaRaquete();
  colisaoRaqueteOponente();    
}

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

function verificaColisaoBorda () {
  if (xBolinha + raio> width || xBolinha - raio< 0) {
    velocidadeXBolinha *= -1;
  }  
  if (yBolinha + raio> height || 
     yBolinha - raio< 0) {
    velocidadeYBolinha *= -1; 
  }
}

function movimentaMinhaRaquete (){
  if (keyIsDown(UP_ARROW)){
    yRaquete -= 10;
  }
  if (keyIsDown(DOWN_ARROW)){
    yRaquete += 10;
  } 
}

function movimentaRaqueteOponente() {
  // falta o código para movimentar a Raquete do Oponente
}

function colisaoMinhaRaquete() {
  colidiu = collideRectCircle(xRaquete, yRaquete, raqueteComprimento, raqueteAltura, xBolinha, yBolinha,raio);
  if (colidiu){
    velocidadeXBolinha *= -1;
  }
}

function colisaoRaqueteOponente() {
  // falta o código de colisão da bolinha com a raquete do oponente
}

Espero que assim ajude a terminar o projeto