GithubHelp home page GithubHelp logo

lcnunes09 / snake-game Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 11 KB

Realizado no desafio no Digital Innovation One, implementação do jogo da cobrinha em HTML, CSS e Javascript.

CSS 12.66% HTML 14.76% JavaScript 72.58%
estudos-javascript jogos-javascript digital-innovation-one

snake-game's Introduction

Jogo da Cobrinha

Este jogo foi inicialmente realizado durante o desafio JavaScript que fiz no Bootcamp Code Like a Full Stack Girl promovido pela Digital Innovation One.

Funcionalidades existentes

O primeiro commit foi como o projeto foi finalizado no desafio, como na imagem abaixo.

✔️ Função para criação do background, utilizando canvas.

✔️ Função para criar a cobrinha na cor verde.

✔️ Função para criar a comida da cobrinha na cor vermelha.

✔️ Habilidade de mover a cobrinha através das setas do teclado.

✔️ Habilidade da cobrinha passar através das bordas e ir para o lado oposto.

✔️ Habilidade da cobrinha comer a comida e aumentar o tamanho.

✔️ Função para terminar o jogo caso a cobrinha se choque com alguma parte do seu corpo.


Funcionalidades desejadas para implementar

No intuito de me desenvolver em HTML, CSS e JavaScript, segue as funcionalidades que pretendo implementar. A ordem da realização não segue nenhum critério.

Release 2 | Implementações Iniciais - 🕐 Finalizar até Maio 30, 2020

Realizado? Funcionalidade Data Implementação Issue #
✔️ Colocar pontuação padrão (10 pontos) a medida que a cobrinha for comendo a comida. 18/05/2020 #3
Mudar a finalização do jogo, ao invés de usar alerta, colocar mensagem flutuante na tela. - #4
Possibilidade de criar um jogo novo. - #5
Mudar as cores para paleta Dark Blue. - #6
Adicionar possibilidade de adicionar bordas. - #7
✔️ Aumentar a velocidade da cobra a cada vez que a cobra comer a comida. 21/05/2020 #8

Release 3 | Implementações Extras 🕐 Finalizar até Junho 13, 2020

Realizado? Funcionalidade Data Implementação Issue #
Criar paleta de cores Light Blue e possibilitar que a pessoa usuária escolha qual cor tema prefere: Dark blue ou Light Blue. - #9
Colocar pontuação no jogo evoluindo para a cada 10 vezes que a cobrinha come, a pontuação aumenta mais 10 pontos. Ou seja, a partir de 10 vezes que a cobra comer, a pontuação passa a ser 20 ao invés de 10 e assim sucessivamente. - #10
Permitir a pessoa escolher se quer jogar sem bordas ou com bordas. - #11
Possibilidade de pausar o jogo apertando a tecla espaço. - #12
Perguntar se deseja começar novamente antes de recarregar a tela. - #13
Implementar recorde para cada vez que a pessoa carregar a tela e continuar jogando. - #14

🪲 Issues mapeados 🕐 Finalizar até Junho 20, 2020

Realizado? Issue Data Implementação Issue #
✔️ Não permitir que a comida apareça no corpo da cobrinha. 23/05/2020 #1
As vezes a cobrinha some da tela quando deveria voltar pelo lado oposto. - #2

snake-game's People

Contributors

lcnunes09 avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

yasminolivss

snake-game's Issues

Adicionar possibilidade de adicionar bordas

Contexto:
Atualmente a cobrinha passa pela parede e aparece no lado oposto. Adicionar bordas e não deixar que a cobrinha saia para o outro lado da parede.

Esperado:

  • Adicionar borda de cor diferente no canvas.
  • Caso a cobra bata na borda, o jogo acaba.

Mudar a finalização do jogo colocando mensagem flutuante na tela.

Contexto:
Atualmente, quando o jogo termina, no momento em que a cobra bate nela mesma, é exibido um alerta dizendo "Game Over". A proposta é mudar esta finalização do jogo, ao invés de usar alerta, colocar mensagem flutuante na tela.

Esperado:
Exibir mensagem na frente do jogo dizendo "Você perdeu! Tente novamente."

Possibilidade de pausar o jogo apertando a tecla espaço

Contexto:
Atualmente não é possível pausar o jogo. Implementar opção de pausar utilizando a tecla espaço e deixar visível a pessoa que está jogando que pode pausar o jogo a qualquer momento e retomar ao jogo, caso o espaço seja apertado novamente.

Esperado:

  • Habilitar a tecla espaço para pausar o jogo.
  • Caso esteja pausado e a pessoa apertar espaço novamente, o jogo será continuado de onde parou.
  • Exibir mensagem logo abaixo do canvas, informando para a pessoa que está jogando que pode apertar a tecla espaço para pausar o jogo.

Perguntar se deseja começar novamente antes de recarregar a tela

Contexto:
Atualmente o jogo vai ter a habilidade de ser pausado [#12 ], porém, caso a tela seja recarregada, a pessoa perde completamente o jogo. Desta forma, perguntar antes de recarregar a tela se deseja começar novamente ou cancelar, independente se o jogo tiver pausado ou não. Porém, caso o jogo não esteja pausado e a pessoa apertar em carregar a página, pausar antes e perguntar se deseja recarregar ou cancelar.

Esperado:

  • Se a pessoa apertar em recarregar a página, exibir alerta perguntando se a pessoa quer recarregar a página mesmo ou continuar o jogo.
  • Se o jogo não tiver pausado antes da pessoa pedir para recarregar a página, pausar o jogo primeiro e depois exibir o alerta.

Implementar recorde para cada vez que a pessoa carregar a tela e continuar jogando

Contexto:
A pessoa terá a habilidade no jogo de criar novos jogos e continuar jogando [#5 ]. Deve ser implementado uma forma de verificar a pontuação mais alta que a pessoa teve durante o momento em que esteve com a tela aberta jogando o jogo e exibir no menu do lado esquerdo.

Esperado:

  • Criar forma de guardar o recorde da pessoa que está jogando com a tela aberta.
  • Exibir do lado esquerdo a última pontuação mais alta em que a pessoa jogou com a janela do jogo aberta.

Evoluir pontuação aumentando a cada conjunto de 10 acertos

Contexto:
Atualmente a pontuação é sempre padrão em 10 pontos [#3 ]. Colocar pontuação no jogo evoluindo para a cada 10 vezes que a cobrinha come, a pontuação aumenta mais 10 pontos. Ou seja, a partir de 10 vezes que a cobra comer, a pontuação passa a ser 20 ao invés de 10 e assim sucessivamente.

Esperado:

  • Determinar o grupo de acertos para aumentar o valor da pontuação.
  • Cada vez que a pessoa passar de 10 acertos, a pontuação aumenta mais 10 e continua neste valor até o próximo grupo de 10 acertos.

Criar paleta de cores Light Blue e possibilitar escolha

Contexto:
Após a implementação da paleta Dark Blue [#6 ], implementar uma nova paleta, Light Blue, e possibilitar que a pessoa usuária escolha do lado esquerdo qual cor tema quer jogar: Dark blue ou Light Blue.

Exemplo:
Light Blue

Esperado:

  • Definir cores da área do background, cobra, comida, título da página.
  • Definir cor de fundo da tela e menu lateral esquerdo.
  • Definir um fundo para a área do título.
  • Implementar opção de escolha entre Dark Blue e Light Blue do lado esquerdo.

Colocar pontuação padrão a medida que a cobrinha for comendo

Contexto:
Atualmente a cobrinha vai comendo a comida e aumentando o tamanho, porém não há nenhuma pontuação vinculada.

Esperado:

  • Aumentar a pontuação em 10 pontos cada vez que a cobrinha comer a comida.
  • Exibir a pontuação na lateral esquerda.

Permitir a pessoa escolher se quer jogar sem bordas ou com bordas

Contexto:
O jogo atualmente está com bordas [#7 ], porém a pessoa deve escolher se quer jogar com bordas ou sem bordas.

Esperado:

  • Colocar habilidade de escolher se se vai jogar com borda ou sem borda do lado esquerdo.
  • Recarregar a página cada vez que a pessoa escolher uma opção diferente.

Mudar as cores para paleta Dark Blue

Contexto:
Atualmente o jogo tem basicamente 4 cores:

  • Um background verde claro - a área do jogo.
  • Um verde mais escuro representando a cobrinha.
  • Um vermelho, representando a comida.
  • Uma cor verde musgo com o título do jogo.

É esperado a criação de um novo tema utilizando a paleta Dark Blue.

Exemplo:
Dark Blue

Esperado:

  • Definir cores da área do background, cobra, comida, título da página.
  • Definir cor de fundo da tela e menu lateral esquerdo.
  • Definir um fundo para a área do título.

As vezes a cobrinha some da tela quando deveria voltar pelo lado oposto

Comportamento atual:
Durante o jogo, em momentos aleatórios, a cobrinha desaparece e fica "parada" do lado de fora do canvas. Quando movemos as teclas depois de um tempo, a cobrinha volta a andar.

Comportamento esperado:
A cobrinha não deveria sumir após passar pela parede, mas sim, sempre voltar pelo lado oposto da borda.

Possibilidade de criar um jogo novo

Contexto:
Atualmente, para criar um novo jogo, é necessário recarregar a tela. Desenvolver habilidade de criar um novo jogo.

Esperado:

  • Criar habilidade de iniciar um novo jogo do zero.
  • Colocar opção em um menu do lado esquerdo,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.