ja revisei e não achei nada de errado com o codigo podem ajudar? https://editor.p5js.org/Ribeiro.gall/sketches/PfQtV5c2Q
ja revisei e não achei nada de errado com o codigo podem ajudar? https://editor.p5js.org/Ribeiro.gall/sketches/PfQtV5c2Q
Olá Gabriel, tudo bem? Espero que sim!
A função collideRectCircle deve ser chamada corretamente e o nome da propriedade length está escrito incorretamente. Aqui está o código corrigido:
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 < imagemCarros.length; i++) { // Correção aqui (length, não lenght)
colisao = collideRectCircle(
xCarros[i],
yCarros[i],
comprimentoCarro,
alturaCarro,
xAtor,
yAtor,
15
);
if (colisao) {
colidiu();
}
}
}
function colidiu() {
yAtor = 366;
}
Certifique-se de que todas as variáveis, como imagemCarros, xCarros, comprimentoCarro e alturaCarro, estejam definidas e corretamente inicializadas em seu código para que a detecção de colisão funcione corretamente. Além disso, certifique-se de que a função verificaColisao está sendo chamada no local apropriado em seu programa.
Caso tenha dúvidas, fico à disposição!
Espero ter ajudado.
Abraços e bons estudos!