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

[Dúvida] Duvida com colisão

Não consegui realizar a ideia proposta pelo instrutor, ao baixar os arquivos pelo gitHUB eles não abrem de jeito nenhum. Afim de solucionar o problema, criei uma pasta no p5 com o nome de p5.collide2d.js e copiei e colei o código do git hub para o p5, adcionando juntamente ao index. Porém:

//códigos do ator
let yAtor = 366; 
let xAtor = 100;
let colisao = false;

function mostraAtor(){
  image(imagemDoAtor, xAtor, yAtor, 30, 30);
}

function movimentaAtor(){
  if (keyIsDown(UP_ARROW)){
    yAtor -= 3;
  }
  if (keyIsDown(DOWN_ARROW)){
    yAtor += 3;
  }
}

function verificaColisao(){
  for(let i = 0; i < imagemDosCarros.length; i++){
    colisao = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarro, alturaCarro, xAtor, yAtor, 15)
    if (colisao){

    }
  }

}

ReferenceError: collideRectCircle is not defined

 p5.js says: 
[ator.js, line 21] "collideRectCircle" is not defined in the current scope. If you have defined it in your code, you should check its scope, spelling, and letter-casing (JavaScript is case-sensitive).
6 respostas
solução!

Oi Luca!! este pequeno guia que eu fiz, deve ajudar-te.

Siga exatamente!!!!! Olha só, com o link abaixo, vc vai para a página onde o p5collide2d.js , ele já está aberto, No canto superior direito como mostra a seta na imagem logo abaixo, vc copia o arquivo, é só clicar no ícone!!! , depois cole num bloco de notas e salve com o nome p5.collide2d.js , pronto , vc já tem o arquivo que precisa . Depois quando estiver o p5.js web editor aberto, é só fazer "upload file". Se ainda sim persistir algum erro, poste novamente.

boa sorte e bons estudos!!

https://github.com/bmoren/p5.collide2D/blob/master/p5.collide2d.js

Bom dia, Segui isso e o meu ainda não volta para a posição inicial

O erro indica que a função collideRectCircle não está definida no escopo atual. Você precisa carregar a biblioteca p5.collide2D para poder usar a função collideRectCircle. Adicione o seguinte comando no seu arquivo HTML, logo após a linha em que você carrega a biblioteca p5.js:

<script src="https://cdn.jsdelivr.net/gh/bmoren/p5.collide2D/p5.collide2d.min.js"></script>

Oi Rafael, Vou te passar abaixo o codigo do meu index, eu colei o que voce passou e mesmo assim, sem colisão ainda. Mas pode ser que esteja na linha de raciocionio correta, veja aí por favor se está faltando algo.

Conseguiu meu caro?!!

Agora sim, colidindo normalmente, eu copiei a função colliderectcircle toda de novo, mas provavel a virgula tenha sido o motivo principal do problema. Te agradeço muito a sua presteza.