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

ReferenceError: collideRectCircle is not defined

Erro que consta em meu código:

ReferenceError: collideRectCircle is not defined at /sketch.js:79:3

 Error at line 79 in colisaoMinhaRaqueteBiblioteca()

└[blob:https://preview.p5js.org/3ea87513-4491-40a5-9471-fee578a81eeb:33:3] Called from line 33 in draw()

Código do projeto:

//Variaveis da Bolinha

let xBolinha = 300; let yBolinha = 200; let diametro = 22; let raio = diametro /2

// Velocidade da bolinha

let velocidadeXBolinha = 6; let velocidadeYBolinha = 6;

let colidiu = false;

//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(); movimentaMinhaRaquete(); verificaColisaoRaquete(); colisaoMinhaRaqueteBiblioteca() }

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); }

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

function verificaColisaoRaquete() { if (xBolinha - raio < xRaquete + raqueteComprimento && yBolinha - raio < yRaquete + raqueteAltura && yBolinha + raio > yRaquete) { velocidadeXBolinha *= -1; } }

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

Código no HTML:

4 respostas
solução!

Olá João Vitor, tudo bem com você? Espero que sim...

Geralmente esse erro acontece, porque o interpretador não conseguiu encontrar o que procurava, seja uma variável ou uma função.

Nesse seu caso, eu acredito que é por causa da falta do arquivo p5.collide2d.js

Mas não basta apenas adiciona-lo ao projeto, você deve falar ao JavaScript onde encontra-lo.

Primeiro baixo o arquivo e descompacte a pasta. https://github.com/bmoren/p5.collide2D/archive/refs/heads/master.zip

Depois você deve adicionar o arquivo no projeto: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

E por fim, você informar ao JavaScript onde encontra-lo. Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Espero ter ajudado a esclarecer sua dúvida. Se tiver mais alguma questão, é só perguntar!

Uma ótima semana e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado . Bons Estudos

Obrigado Lucas, ajudou muito!

Fiz o procedimento, mas o p5 não identificou um caractere de ">" no meu código (linha 14). O que eu faço? Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Oi, Yan! Na linha 14, você fechou a tag script antes de colocar os atributos. Além disso, está escrito "scr" no lugar de "src". Compare as linhas abaixo:

Como você colocou:

<script> scr="p5.collide2d.js"></script>

Como deve ser

<script src="p5.collide2d.js"></script>

Um abraço!