A vaquinha trava quando colide ou quando chega na posição final, e ela esta colidindo muito antes de relar no carro
//código do carro
let xCarros=[600,600,600,600,600,600];
let yCarros=[40,96,150,210,270,318];
let velocidadeCarros=[2, 2.5, 3.2, 5, 3.3, 2.3];
let comprimentoCarro=50;
let alturaCarro=40;
function mostraCarro(){
for(let i=0; i< imagemCarros.length;i++ ){
image(imagemCarros[i], xCarros[i], yCarros[i], comprimentoCarro, alturaCarro);
}
}
function movimentaCarro(){
for(let i = 0; i < imagemCarros.length; i ++){
xCarros[i] -= velocidadeCarros[i];
}
}
function voltaPosicaoInicialDoCarro(){
for(let i = 0; i < imagemCarros.length; i ++){
if(passouTodaATela(xCarros[i])){
xCarros[i] = 600;
}
}
}
function passouTodaATela(xCarro){
return xCarro < -50;
}
//codigo do ator
let xAtor= 85;
let yAtor=366;
let colisao=false;
let meusPontos=0;
function mostraAtor(){
image(imagemDoAtor, xAtor, yAtor, 30,30);
}
function movimentaAtor(){
if(keyIsDown(UP_ARROW)){
yAtor-=3;
}
if(keyIsDown(DOWN_ARROW)){
yAtor+=3;
}
}
function verificaColisao(){
//collideRectCircle(x1, y1, width1, height1, cx, cy, diameter)
for (let i=0; i< imagemCarros.length; i++){
colisao = collideRectCircle(xCarros[i],yCarros[i],comprimentoCarro,alturaCarro, xAtor,yAtor,15)
if(colisao){
voltaAtorParaPosicaoInicial();
}
}
}
function colidiu(){
yAtor=366;
}
function inluiPontos(){
textAlign(CENTER);
textSize(25);
fill(color(255,255,0));
text(meusPontos, width/5, 27);
}
function marcaPonto(){
if(yAtor<15){
meusPontos +=1;
voltaAtorParaPosicaoInicial();
}
}
function setup() {
createCanvas(500, 400);
}
function draw() {
background(imagemDaEstrada);
mostraAtor();
mostraCarro();
movimentaCarro();
movimentaAtor();
voltaPosicaoInicialDoCarro();
verificaColisao();
inluiPontos();
marcaPonto();
}