Um pequeno exercício de teste de conhecimento que me desafiei criando um jogo que gosto muito.
Estava jogando um campo minado no celular e resolvi me desafiar a implementar algo utilizando o mínimo de recursos.
- Desenvolver um campo minado funcional pelo console.
- Utilizar o mínimo de recursos extras disponíveis (frameworks, bibliotecas, etc...)
- Fazer no menor número de arquivos
- Desenvolver em no máximo duas horas.
- Utilizar o menor número de linhas possível
Na minha visão atendi a todos os pontos do desafio proposto, utilizei apenas node.js e fiz tudo em um arquivo apenas com cerca de 200 linhas porém existem muitos pontos de melhoria, como por exemplo:
- implementar a adição das bombas após o primeiro toque, para que não de game over logo de inicio.
- implementar forma de dizer onde existe minas (colocar a bandeirinha)
- mostrar número de minas restantes.
- criar níveis, fácil, médio e difícil, ao invés de determinar o numero de minas.
- mostrar o tempo que levou.
- implementar testes unitários
- mudar a cor dos números como é no caso do campo minado clássico.
- trocar bombas por emoji
Na pasta do projeto, executar pelo terminal:
node minesweeper.js