1
resposta

Tornar o Jogo mais desafiador

Consegui fazer o FreeWay como na aula (https://editor.p5js.org/andreygsl20/sketches/TP6ORSBq9), mas eu estava tendo fazer com que a velocidade dos carros aumente sempre que um ponto e feito, teria como ?

1 resposta

Olá Andrey, tudo bem? espero que sim

Desde já, gostaria de agradecer a paciência em aguardar uma resposta

Deixo aqui o meu parabéns ao seu projeto, o mesmo representa a sua criatividade e vontade de aprender.

Mas vamos ao que interessa, o sistema de dificuldade vai funcionar como relatado por ti, ou seja, conforme o jogador marque pontos a dificuldade aumenta, no caso do nosso game significa o aumento da velocidade e como sabemos que o carro ao passar tal ponto ele retorna a posição inicial, o que vai gerar a impressão de um tráfego mais intenso.

Primeiro vamos criar uma função, que verifica os pontos e que de acordo com a quantidade a variável que é responsável por controlar a velocidade será alterada, ficando assim.

function SistemaDeDificuldade(){
  if(pontos < 4){ // se pontos for menor que 4 entao vCarros recebe a velocidade abaixo:
    vCarros = [1.2, 1.3, 1.6, 1, 1.1, 1.5];
     }
  if(pontos >= 4)
    {
       vCarros = [2, 2.5, 3.2, 5, 3.3, 2.3];
    }
  if(pontos > 5){
     vCarros = [3.5, 3.9, 4.3, 5, 4.4, 4.9];
     }  
}

Por fim é só chamar na function Draw(){} a função agora criada SistemaDeDificuldade().

Isso já é o suficiente para finalizar o sistema de dificuldade.

Por fim acabei fazendo um “a mais”, modificando a cor do placar conforme a dificuldade, para isso vamos modificar a função responsável por mostrar o placar que fica no arquivo ator.js.

function meusPontos(r,g,b){
  fill(r,g, b);
  textAlign(CENTER);
  textSize(30);
  text(pontos, width / 5, 29);
}

e a função criada anteriormente fica assim:

function SistemaDeDificuldade(){
  if(pontos < 4){ //fácil 
    vCarros = [1.2, 1.3, 1.6, 1, 1.1, 1.5];
    meusPontos(0,255,0); //verde
     }
  if(pontos >= 4) // médio
    {
       vCarros = [2, 2.5, 3.2, 5, 3.3, 2.3];
      meusPontos(255,255,0); //amarelo
    }
  if(pontos > 5){ // difícil 
     vCarros = [3.5, 3.9, 4.3, 5, 4.4, 4.9];
    meusPontos(255,0,0); //vermelho
     }  
}

Andrey espero que de alguma forma eu tenha te ajudado , e é claro fique a vontade para alterar a velocidade, coloquei bem lento para ser bem perceptível a mudança de velocidade, troque a condição dos pontos para mudar as cores e muitas outras coisas. Novamente parabéns pelo projeto, qualquer outra dúvida fique a vontade para perguntar aqui no fórum. Um grande abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!