Olá. Quando coloco o print pra verificar se acontece a colisão do ator com os carros não aparece nada e não estou conseguindo achar onde está o problema.
Olá. Quando coloco o print pra verificar se acontece a colisão do ator com os carros não aparece nada e não estou conseguindo achar onde está o problema.
Você definiu a variável colisão e definiu ela como false, porém ela não muda no decorrer do código, ela sempre irá ser false. Printe a linha abaixo e veja o que acontece e tente solucionar a partir daí.
print(collideRectCircle(xCarros[i], yCarros[i], compCarros, altCarros, xVaca, yVaca, 30))
Olá, já acabei solucionando meu problema depois de olhar por mais um tempo. O que faltava era somente a parte do colisao = collideRectCircle(xCarros[i], yCarros[i], compCarros, altCarros, xVaca, yVaca, 30)).
Boa tarde.
Está colidindo apenas com 1 carro. com os outros 2 nunca ocorrre a colisoa. nao sei onde errei.
function verificaColisao() { //collideRectCircle(x1, y1, width1, height1, cx, cy, diameter) for (let i = 0; i < imagemCarros.length; i = i + 1) { colisao = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarro, larguraCarro, xAtor, yAtor, 15); } if (colisao) { print("Colidiu"); } }
Olá Daniel, No arquivo sketch.js tinha esquecido de inserir a função verificaColisao(); em function draw (). Veja se funciona: function draw() { background(imagemDaEstrada); mostraAtor(); mostraCarro(); movimentaCarro(); movimentaAtor(); voltaPosicaoInicialDoCarro(); verificaColisao(); }