Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Inclusão de Dificuldade

Após realizar os dois cursos de logica de programação me deparei com a ideia de um dos alunos aqui no forum de realizar um prompt para que o jogador defina uma dificuldade do jogo e imaginei em criar a mesma ideia no joguinho, apesar disso por ter files distintos para os carros e o sketch (onde apresentaria as mensagens iniciais para definicação da dificuldade) acabei me rendendo a deixar os codigos dos carros na propria parte do sketch para que a seguinte logica funcionasse:

//dificuldades
let a = "facil"
let b = "medio"
let c = "dificil"


function setup() {
  createCanvas(500, 400);
  somDaTrilha.loop();
      function escolheNivel(){
        dificuldade = prompt("Qual o Nível você deseja: facil, medio ou dificil");
        return(dificuldade);
    }

    escolheNivel();

    if(dificuldade == a || dificuldade == b || dificuldade == c){

        alert('Comece o Jogo! ');

    } else {

        alert('você digitou errado, deve ser tudo minúsculo e sem acento, digite novamente: ');
        escolheNivel();
    }


if(dificuldade == a ){
        return velocidadeCarros = [5, 4, 3, 3, 2.5, 3];;
    } 
  else if(dificuldade == b){
        return velocidadeCarros = [7, 6.5, 5.8, 6, 5.5, 4.8];;
    } 
  else if(dificuldade == c){
        return velocidadeCarros = [12, 10, 9, 7.5, 6.5, 7];;
    }
}

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


//código dos carros

let xCarros = [600, 600, 600, 600, 600, 600];
let yCarros = [40, 96, 150, 210, 265, 318];
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
}

Ai vem a dúvida, haveria alguma maneira simples de permanecer com as considerações e codigos relacionados ao carro num file carros.js e utilizar as variaveis de velocidadeCarros caso elas estejam no sketch nesse exemplo?

1 resposta
solução!

Olá, Estevam! Tudo bem contigo?

Parabéns pelo código! Ficou fantástico a interatividade, podendo escolher dificuldade e o resultado após a escolha dessa dificuldade.

Valeu por ter compartilhado conosco!

Vai contribuir e muito com a comunidade!

É possível fazer essa referencia em outro arquivo sim, mas não podemos esquecer de referenciar no index.html.

Porém, achei que ficou excelente!

Aos poucos daria para ir mexendo sim!

No mais, já valeu a criatividade!

É isso aí!

Um abraço e bons estudos, Estevam!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software