1
resposta

[Projeto] Inclui movimentos para os lados, jogo mais rápido a cada ponto e vidas para o ator.

**Para deixar o jogo mais divertido, inclui: **

Movimentações para todos os lados com o seguinte condigo na função "movimentaAtor":

let velocidadeAtor = 3;

function movimentaAtor(){
  if (keyIsDown(LEFT_ARROW)) {
    xAtor -= velocidadeAtor;
  }
  if (keyIsDown(RIGHT_ARROW)) {
    xAtor += velocidadeAtor;
  }
  if (keyIsDown(UP_ARROW)) {
    yAtor -= velocidadeAtor;
  }
  if (keyIsDown(DOWN_ARROW)) {
    yAtor += velocidadeAtor;
  }
}

Bordas para o personagem não sair do jogo.

Incluir essa função na function draw()

function borda(){
  if (xAtor < 0){
    xAtor = 0
  }
    if (xAtor > 470){
    xAtor = 470
  }
    if (yAtor > 385){
    yAtor = 385
  }
}

Deixei o jogo mais rápido, acelerando o ator e os carro:

let aumentarVelocidade = 0.3;

function marcaPonto(){
  if (yAtor < -15){
    yAtor = 385;
    meusPontos += 1;
    somPonto.play();
    velocidadeAtor += aumentarVelocidade;
    for (let i = 0; i < velocidadeCarros.length; i++){
      velocidadeCarros[i] += aumentarVelocidade;
    }
  }
}

Criei um sistema de vidas, para resetar os pontos e a velocidade do ator e dos carros:

let vidas = 5;
let velocidadeCarros = [2, 2.5, 3.2, 5, 3.3, 2.3];
let velocidadeCarrosPa = [2, 2.5, 3.2, 5, 3.3, 2.3];

function verificaColisao(){
  for (let i = 0; i < imagemCarros.length; i += 1){
    colisao = collideRectCircle(xCarros[i], yCarros[i], larguraCarro, alturaCarro, xAtor, yAtor, 15)
    if (colisao){
      colidiu(); 
      vidas -= 1
    }
  }
}

Incluir essa função na function draw()

function gameOver(){
  if(vidas < 1){
    aumentarVelocidade = 0.3; 
    velocidadeAtor = 3; 
    vidas = 5; 
    meusPontos = 0; 
    for (let i = 0; i < velocidadeCarros.length; i++){
      velocidadeCarros[i] = velocidadeCarrosPa[i]
    }
  }
}
function placar(){
  textAlign(CENTER)
  textSize(25)
  fill(color(255,69,0))
  text(meusPontos, 125, 27)
  text(vidas, 375, 27)
}

Link para o jogo se quiser conferir como ficou: https://editor.p5js.org/Junior_Valdivieso/full/MRZ2iHfdz

1 resposta

Opa Junior, tudo certo?

Parabéns! Seu projeto e sua dedicação são incríveis, meus parabéns pelo seu empenho e dedicação em buscar desenvolver e praticar ainda mais! É muito importante colocar em prática o que se aprende e se desafiar a criar algo novo.

Se precisar de ajuda ou tiver alguma dúvida, estou à disposição, conte comigo!

Tenha um bom dia e bons estudos.