Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Carros 4, 5 e 6 não aparencem, não identifico o erro

Creio que fiz exatamente de acordo com as instruções, e mesmo assim não apareceu os carros. Podem me auxiliar?

//imagens do jogo

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;
let imagemCarro2;
let imagemCarro3;

function preload(){
  imagemDaEstrada = loadImage("imagens/estrada.png");
  imagemDoAtor = loadImage("imagens/ator-1.png");
  imagemCarro = loadImage("imagens/carro-1.png");
  imagemCarro2 = loadImage("imagens/carro-2.png");
  imagemCarro3 = loadImage("imagens/carro-3.png");  

  imagemCarros = [imagemCarro, imagemCarro2, imagemCarro3, imagemCarro, imagemCarro2, imagemCarro3]
}

//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; }

function setup() {
  createCanvas(600, 400);
}

function draw() {
  background(imagemDaEstrada);
  mostraAtor();
  mostraCarro();
  movimentaCarro();
  movimentaAtor();
  voltaPosicaoInicialDoCarro();
  verificaColisao();
  imagemCarros = [imagemCarro, imagemCarro2, imagemCarro3];
}
2 respostas
solução!

Remova a ultima linha de:

function draw() {
  background(imagemDaEstrada);
  mostraAtor();
  mostraCarro();
  movimentaCarro();
  movimentaAtor();
  voltaPosicaoInicialDoCarro();
  verificaColisao();
}

Muito obrigada!!