Os carros não aparecem e o jogo faz um barulho sinistro!
Link do meu projeto : https://editor.p5js.org/PolimataDigital/sketches/u8RtygXF1
Os carros não aparecem e o jogo faz um barulho sinistro!
Link do meu projeto : https://editor.p5js.org/PolimataDigital/sketches/u8RtygXF1
Oi, Victor! Tudo bem?
Podemos localizar e solucionar o problema acessando a página de código: carro1.js
. Nela, inicialmente, podemos notar que as listas yCarros
, velocidadeCarros
e xCarros
apresentam apenas 5 valores declarados dentro de cada uma delas, entretanto, possuimos 6 carros dentro da lista imagemCarros
. Dessa forma, devemos adicionar mais um valor, correspondente ao sexto carro, em cada uma das listas: yCarros
, velocidadeCarros
e xCarros
.
Após isso, na função mostraCarros()
temos um for
para percorrer essa mesma função, o que não faz sentido, pois esse for
deve percorrer a lista imagemCarros
. Devemos então alterar dentro do nosso for
o comando i < mostraCarros.length
por i < imagemCarros.length
. Somado a isso, podemos perceber que dentro de image()
o primeiro parâmetro (lista responsável pela imagem dos carros) está escrito de uma forma diferente da declarada, logo, alteraremos o parâmetro imagemDosCarros[i]
por imagemCarros[i]
.
Seguiremos o mesmo raciocínio com as demais funções declaradas ao longo dessa página, alterando dentro do for
os comandos por i < imagemCarros.length
.
Após fazer as alterações necessárias, comentadas acima, essa página de código deverá ficar da seguinte maneira:
///listas de dados de tudo
let yCarros = [40,100,150,210,265,318];
let velocidadeCarros = [3.5 , 5.2 , 3 , 6 , 2.5, 1.5];
let xCarros = [600,600,600,600,600,600];
//variável mostrar carros
function mostraCarros(){
for (let i = 0; i < imagemCarros.length; i= i + 1 ){
image (imagemCarros[i],xCarros[i],yCarros[i], 50,40);
}
}
//variável velocidade
function movimentaCarros(){
for (let i = 0; i < imagemCarros.length; i= i + 1 ){
xCarros[i] -= velocidadeCarros[i];
}
}
//Loop dos carros
function voltaPosicaoInicialDosCarros(){
for (let i = 0; i < imagemCarros.length; i= i + 1 ){
if (xCarros[i] < -40){
xCarros[i] = 600
}
}
}
Espero ter ajudado! Caso tenha ficado alguma dúvida sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Nossa, tem razão!
Eu decidi copiar o código todo do professor depois que o meu deu errado, mas alguma coisa deu errado nesse processo e foi isso!
Eu entendi a lógica agora, muito obrigado mesmo ! Ajudou muito !