Oiii Cicero, como você está?
Seu jogo está ficando muito legal! Fugir dos boletos dá uma motivação a mais, né?
Para atribuir velocidades aleatórias a cada vez que os objetos voltarem a aparecer na tela, adicione esse trecho na pasta carros.js:
function velocidadeAleatoria() {
return Math.random() * (9 - 2) + 2;
}
function alteraVelocidades(){
for (let i = 0; i < imagemCarros.length; i++){
velocidadeCarro[i] = velocidadeAleatoria();
velocidadeCarroInverso[i] = velocidadeAleatoria();
}
}
E chame a função alteraVelocidade()
dentro de voltaPosicaoInicialCarro()
, assim:
function voltaPosicaoInicialCarro(){
for(let i=0;i<imagemCarros.length;i++){
if(passouTodaATela(xCarro[i])){
xCarro[i]=600;
}
}
for(let i=0;i<imagemCarrosInvertido.length;i++){
if(passouTodaATelaInverso(xCarroInverso[i])){
xCarroInverso[i]=-50;
}
}
alteraVelocidades();
//console.log(velocidadeCarro)
}
Agora, a cada vez que os atores passarem a tela, a velocidade vai se alterar.
Deixei o console.log
comentado. Caso queira ver as velocidades, é só retirar as duas barras do começo da linha e executar.
Vou deixar aqui a documentação de Math.random
, caso você queira entender melhor sobre essa função.
O artigo está em inglês. Se esse idioma não for confortável para você, é possível usar o tradutor do próprio navegador, clicando em qualquer lugar da tela com o botão esquerdo do mouse e escolhendo a opção traduzir para o português.
Estou a disposição!
Forte abraço.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!