Boa noite, Maxwell!
Encontrei cinco erros no seu código, o primeiro é que você trocou o ponto e vírgula ( ; ) por vírgula sem o ponto ( , ) na function movimentaCarro logo após a atribuição do zero à variável i :
function movimentaCarro(){ for ( let i =0, i < imagemC.....
O segundo erro é que tem uma chave ( } ) de fechamento a mais no código, logo após o número 600 na function movimentaCarro, basta remover uma das chaves.
E os ultimos erros estão na condição do loop for das funções movimentaCarro e voltaPosicaoInicial, a propriedade .legth foi escrita errada, foi digitado lenght :
movimentaCarro(){ for (let i =0; i < imagemCarros.lenght;
voltaPosicaoInicial(){ for (let i = 0; i< imagemCarros. lenght;
E dentro da mesma condição do loop for da função voltaPosicaoInicial foi adicionado um espaço entre imagemCarros e o length, como pode ser visto acima.
Segue a baixo a solução do código:
let xCarros =[500, 500, 500];
let yCarros = [40, 96, 150];
let velocidadeCarros = [2, 2.5, 3.2];
function mostraCarro(){
for (let i = 0; i< imagemCarros.length; i = i + 1){
image(imagemCarros[i], xCarros[i], yCarros[i], 50, 40);
}
}
function movimentaCarro(){
for (let i =0; i < imagemCarros.length; i = i + 1){
xCarros[i] -= velocidadeCarros[i];
}
}
function voltaPosicaoInicial(){
for (let i = 0; i< imagemCarros.length; i = i + 1){
if (passouTodaTela(xCarros[i])){
xCarros[i] = 600;
}
}
}
function passouTodaTela(xCarro){
return xCarro < -50;
}