1
resposta

Meu Ator está sempre colidindo

Olá, pessoal! Estou com problema na hora de fazer o teste de colisão com o personagem. Mesmo colocando a função colidiu = false; no console sempre aparece a mensagem de colisão. Já tentei algumas coisas mas nada ainda. Se alguém poder me ajudar.Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade

https://editor.p5js.org/leob3llo/sketches/yrl3gnwza

1 resposta

Olá, Leonardo, tudo bem?

Desculpe pela demora em obter retorno.

Não sei se entendi muito bem a sua pergunta, portanto, explicarei direitinho como funciona a variável colisao, e o seu funcionamento na função verificaColisao().

Criamos essa variável booleana, para fazer o controle da colisão, e ela guardará a informação de que houve ou não uma colisão. Inicialmente colocamos ela como false, pois não há nenhuma colisão no início do jogo.

Na função verificaColisao(), quando há uma colisão constatada através da função collideRectCircle, essa função tem como retorno um valor também booleano e esse valor passa a ser atribuído a variavel colisao, portanto, caso aconteça alguma colisão, esse valor deixa de ser false e torna-se true.

No print que você colocou só irá imprimir a string “colidiu”, quando a variável colisao é true.

Testei o seu código e ele está funcionando perfeitamente, inclusive o código está diferente do print da tela que você postou aqui, creio que já tenha resolvido o problema.

Mas me deixe saber se essa era de fato a sua dúvida. Ficarei no aguardo.

Espero ter ajudado.

Abraços.

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