1
resposta

[Dúvida] erro de referencia

olá, estou com problemas com meu codigo, creio que esteja tudo certo porem na hora de fazer o up do arquivo esta dando erro de referencia alguem poderia me ajudar

// Variaveis da bolinha
let xBolinha = 300;
let yBolinha = 200;  
let diametro = 15; 
let raio = diametro / 2; 

// Velocidade bolinha 
let velocidadeXBolinha = 6;
let velocidadeYBolinha = 6;

// variaveis raquete 
let xraquete = 5;
let yraquete = 150;
let larguraraquete = 10;
let alturaraquete = 90;

let colidiu = false;

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

function draw() {
  background(0);
  mostraBolinha ();
  velocidadeBolinha ();
  bordabolinha ();
  raqueteplayer1 ();
  movimentaraquetep1 ();
 //colisaoraqueteP1 ();
  colisaominharaquetebiblioteca();
}

function raqueteplayer1 () {
  rect(xraquete, yraquete, larguraraquete, alturaraquete);
}
function mostraBolinha () {
circle(xBolinha, yBolinha, diametro)
}
function velocidadeBolinha () {
  xBolinha += velocidadeXBolinha
  yBolinha += velocidadeYBolinha
}
function bordabolinha () {

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

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

function movimentaraquetep1 () {
  if (keyIsDown(UP_ARROW)){
    yraquete -= 10; }
   if (keyIsDown(DOWN_ARROW)){
    yraquete += 10; }
}

function colisaoraqueteP1 () {
  if (xBolinha - raio < xraquete + larguraraquete 
   && yBolinha - raio < yraquete + alturaraquete
   && yBolinha + raio > yraquete ) {
    velocidadeXBolinha *= -1; 

  }
}

function colisaominharaquetebiblioteca () {
  colidiu =
  collideRectCircle(xraquete, yraquete,larguraraquete, alturaraquete, xbolinha, ybolinha, raio);
  if (colidiu) {
    velocidadeXBolinha *= -1
  }
}``
1 resposta

Oi Bruno. Perceba que logo no inicio do seu código, vc usa xBolinha e yBolinha.

// Variaveis da bolinha
let xBolinha = 300;
let yBolinha = 200;  
let diametro = 15; 
let raio = diametro / 2; 

depois na última função do seu código, vc usa xbolinha e ybolinha com minúscula!!

function colisaominharaquetebiblioteca () {
  colidiu =
  collideRectCircle(xraquete, yraquete,larguraraquete, alturaraquete, xbolinha, ybolinha, raio);
  if (colidiu) {
    velocidadeXBolinha *= -1
  }
}`

Acredito que seja isto. Do resto me parece normal.

Bons estudos!!