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

[Dúvida] ReferenceError: mostraRaquete is not defined, alguém consegue me ajudar achar o erro?

ReferenceError: mostraRaquete is not defined

 //variáveis da bolinha 
 let xBolinha = 300;
 let yBolinha = 200;
 let diametro = 15;


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

 //variáveis da raquete 

 let xRaquete = 5;
 let yRaquete = 150;
 let raqueteComprimento = 10;
 let raqueteAltura = 90


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

function draw() {
  background(0);
  mostraBolinha();
  movimentaBolinha();
  verificaColisaoBorda();
  mostraRaquete();
}

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

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 mostraRaquete() {
  rect(xRaquete, yRaquete, raqueteComprimento, raqueteAltura)
}
}
4 respostas
solução!

Oi, Samanta! Tudo bem?

Para resolvermos o nosso problema devemos fazer apenas algumas alterações no nosso código:

Inicialmente, podemos observar que a função verificaColisaoBorda() foi aberta, entretanto, não foi fechada. Devido à essa condição, a função mostraRaquete() não está sendo reconhecida como uma função declarada, pois ela se encontra dentro da função verificaColisaoBorda().

Dessa forma, para resolvermos o impasse, basta adicionarmos uma chave "}" ao final da função verificaColisaoBorda(), deixando-a da seguinte maneira:

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

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

Por fim, devemos excluir a última chave da função mostraRaquete(), pois não há a necessidade da sua presença, visto que, a função já se encontra fechada. Iremos, então, deixar a função apenas da seguinte forma:

function mostraRaquete() {
  rect(xRaquete, yRaquete, raqueteComprimento, raqueteAltura)
}

Espero ter ajudado!

Caso tenha ficado alguma dúvida, sinta-se à vontade para comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓

Muito obrigada, um detalhe que faz toda diferença, pois sem ele não conseguimos ter êxito.

nossa, eu bati cabeça com isso... Um detalhe faz realmente toda a diferença

Tive a mesma duvida! ja sanei!