Ir ao conteúdo
  • Cadastre-se

Javascript Desviando de Asteróides Travado


Posts recomendados

Bom Dia, estou iniciando em JavaScript e estou com problemas para criar um jogo onde o principal objetivo é desviar de asteroides, até ontem o jogo funcionava, reverti as alterações feitas porém continua não funcionando. Após clicar no botão iniciar, o canvas aparece e a imagem da Nave porém trava nesse ponto.
Se alguma pessoa mais experiente conseguir de dar alguma dica de onde está o erro agradeço.
Outros problemas que estava tentando resolver do código:
Existe uma punição para caso o jogador ficasse parado por mais de 3 segundos, após esse mesmo tempo ele deve perder 10 pontos por cada segundo parado. (O que estava acontecendo era que a pontuação só subia quando a nave ficava em movimento, qualquer instante que a nave ficasse parada a pontuação já começava a diminuir)
Após clicar em reiniciar, a velocidade dos asteroides duplicava, quanto mais vezes fosse clicado mais rápido seriam.
Impedir que a nave saia da área designada.

Alguém com mais experiência conseguiria me ajudar?

jogo.rar

Link para o comentário
Compartilhar em outros sites

 

@LPatriziBom amigo vamos lá

 

Sobre o problema do pause, ele acontece no script de penalidade, você adicionou um "stopped = true" no inicio do bloco do seu IF e a condição para isso é se a nave está parada, e como ela inicia parada, ele sempre vai parar o seu jogo no segundo frame.

 

image.png.f8d96b7c839fe16349a6748a8d6086d3.png

 

Eu não consegui replicar esse erro "Após clicar em reiniciar, a velocidade dos asteroides duplicava, quanto mais vezes fosse clicado mais rápido seriam.
Impedir que a nave saia da área designada."

18 horas atrás, LPatrizi disse:

Bom Dia, estou iniciando em JavaScript e estou com problemas para criar um jogo onde o principal objetivo é desviar de asteroides, até ontem o jogo funcionava, reverti as alterações feitas porém continua não funcionando. Após clicar no botão iniciar, o canvas aparece e a imagem da Nave porém trava nesse ponto.
Se alguma pessoa mais experiente conseguir de dar alguma dica de onde está o erro agradeço.
Outros problemas que estava tentando resolver do código:
Existe uma punição para caso o jogador ficasse parado por mais de 3 segundos, após esse mesmo tempo ele deve perder 10 pontos por cada segundo parado. (O que estava acontecendo era que a pontuação só subia quando a nave ficava em movimento, qualquer instante que a nave ficasse parada a pontuação já começava a diminuir)
Após clicar em reiniciar, a velocidade dos asteroides duplicava, quanto mais vezes fosse clicado mais rápido seriam.
Impedir que a nave saia da área designada.

Alguém com mais experiência conseguiria me ajudar?

jogo.rar 7 kB · 5 downloads

 

Para testar o jogo eu adicionei alguns script para fazer a nave andar

 

// Objeto da nave
const nave = {
  x: canvas.width / 2 - 25,
  y: canvas.height / 2 - 25,
  width: 50,
  height: 50,
  directionX: 0, // Direção horizontal da nave
  directionY: 0, // Direção vertical da nave
  speedY: 3, // Velocidade apliocada no eixo Y
  speedX: 3 // Velocidade apliocada no eixo X
};

 

// Adicionando movimento do foguete
nave.x += nave.speedX * nave.directionX,
nave.y += nave.speedY * nave.directionY

// Desenha a nave
ctx.drawImage(
  naveImage,
  nave.x,
  nave.y,
  nave.width,
  nave.height
);

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!