2
respostas

ERRO DE REFERENCIA

Preciso de uma ajuda, pois no meu código, mesmo depois de fazer a referência no index (já conferi digitação, pontuação e etc), o console continua acusando erro de referencia e o jogo travado.

//variáveis da bolinha
  let xBolinha = 300;
  let yBolinha = 200;
  let diametroBolinha = 20;
  let velocidadeXBolinha = 6;
  let velocidadeYBolinha = 6;
  let raioBolinha = diametroBolinha/2;

//variáveis da raquete
  let alturaRaquete = 80;
  let xRaquete1 = 15;
  let xRaquete2 = 575;
  let yRaquete1 = 200 - alturaRaquete/2;
  let yRaquete2 = 200 - alturaRaquete/2;
  let larguraRaquete = 12;
  let bordaRaquete = 10;
  let corFundo = 0;

//variáveis de colisão
  let colidiu = false

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

function draw() {

  background(corFundo);

  mostraBolinha();
  movimentoBolinha();
  colisaoBolinha();
  mostraRaquete1();
  mostraRaquete2();
  movimentoRaquete1();
  movimentoRaquete2();
  colisaoRaquete1();
}

function mostraBolinha(){

  circle(xBolinha, yBolinha, diametroBolinha);
}

function movimentoBolinha(){

  xBolinha += velocidadeXBolinha;
  yBolinha += velocidadeYBolinha;
}

function colisaoBolinha(){

  if((xBolinha + raioBolinha)>width || (xBolinha - raioBolinha) < 0){

    velocidadeXBolinha *= -1;
  }

  if((yBolinha + raioBolinha)>height || (yBolinha - raioBolinha) < 0){

    velocidadeYBolinha *= -1;
  }
}

function mostraRaquete1(){

    rect(xRaquete1, yRaquete1, larguraRaquete, alturaRaquete, bordaRaquete);

}

function mostraRaquete2(){

    rect(xRaquete2, yRaquete2, larguraRaquete, alturaRaquete, bordaRaquete);

}

function movimentoRaquete1(){

  if (keyIsDown(UP_ARROW))

  yRaquete1 -= 10;

  if (keyIsDown(DOWN_ARROW))

  yRaquete1 += 10;

}

function movimentoRaquete2(){
  yRaquete2 = yBolinha - alturaRaquete / 2

function colisaoRaquete1(){
    colidiu = collideRectCircle(xRaquete1, yRaquete1, larguraRaquete, alturaRaquete, xBolinha, yBolinha, diametroBolinha);

    if (colidiu) {
        velocidadeXBolinha *= -1;
    }
}


}
2 respostas

ERRO ENCONTRADO: Na função (movimentoRaquete2() deixei a função sem a chave encerrando a mesma, se você teve o mesmo erro e já tentou de tudo, confere se não faltou alguma chave...

function movimentoRaquete2(){
  yRaquete2 = yBolinha - alturaRaquete / 2
}
function colisaoRaquete1(){
    colidiu = collideRectCircle(xRaquete1, yRaquete1, larguraRaquete, alturaRaquete, xBolinha, yBolinha, diametroBolinha);

    if (colidiu) {
        velocidadeXBolinha *= -1;
    }
}

Boa, Artur!

Mandou bem!!!

Fica registrado sua dica aqui! Uma boa dica aliás!

Um abraço e bons estudos