https://editor.p5js.org/allandecampossilva/sketches/pZZ0Hn2s4 aqui esta o link do projeto
Bom dia Allan! Tudo bem com você?
Sua personagem não está andando devido à função colidiu()
ter sido chamada dentro de draw()
, no arquivo sketch.js.
Criamos a função colidiu
com objetivo de fazer com que a vaquinha volte à posição inicial. Como queremos que isso aconteça apenas quando houver o contato com um carro, a função colidiu
é chamada para execução dentro de verificaColisao()
, assim:
function verificaColisao(){
for (let i = 0; i < imagemCarros.length; i++){
colisao = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarro, alturaCarro, xAtor, yAtor, 15)
if (colisao){
colidiu()
}
}
}
Nesse estrutura em que colidiu
está dentro de uma condição if
, apenas quando a condição for verdadeira, ou seja, quando a colisão acontecer, a vaquinha voltará ao local y
determinado.
Como colidiu
está dentro de draw
, a função está sendo executada a todo momento. Então, sempre que a vaquinha se mover, o y
volta a ser 366 automaticamente.
Excluir a linha 14 no arquivo sketch.js fará com que a vaquinha possa se mover novamente.
Espero ter ajudado, Allan! Qualquer dúvida, estou a disposição.
Forte abraço.
Oi, Allan. Retire o "colidiu()" de dentro da função function "draw()"
muito obrigado !!!!!!!!