As balas saem da nave continuamente. O jogador controla a nave e desvia do inimigo utilizando a tela Touch Screen. Caso o inimigo encoste no avião, o jogador perde e a aeronave explode. Se o tiro acertar o inimigo, ele explode e você acumula pontos.
A quantidade de vidas do jogador é inexistente, caso a aeronave seja destruída você perde. O objetivo é destruir os inimigos até que algum encoste na aeronave e a destrua.
Construído em Flutter e Flame, cada objeto da tela possui uma classe especifica.
A imagem de fundo se move usando o efeito Parallax, que é um recurso nativo da biblioteca Flame.
- Jose Matias Lemes Filho
Desenvolvido em flutter na versão 3.3.9.
- A linguagem de programação Dart.
- Utilizado flame engine framework do flutter.
- Utilizado flame audio.
- O protótipo de UI foi desenvolvido no Figma.
- Fullscreen mode
- Trilha sonora
- Som de efeito
- Background infinito
Para cada objeto temos uma classe separada.
class Bullet extends SpriteComponent
class Player extends SpriteAnimationComponent
class Enemy extends SpriteAnimationComponent
class Raptor extends Component with HasGameRef<GameManager>
Para executar esse jogo é necessário as seguintes depedências:
- Flutter
- Android studio para emular o smartphone (opcional)
- Uma IDE compatível (ex. VScode)
Etapas para a execução em ambiente local:
- Clonar o repositório
git clone https://github.com/RicardoPiza/FlutterGame/
- Acessar a pasta do repositório recém clonado
cd FlutterGame
- Instalar as dependências do projeto. Pode ser feito dentro do projeto através do arquivo pubspec.yaml ou através do comando:
flutter pub get
- Inicie o projeto
flutter run lib/main.dart
Desenvolvido para um projeto acadêmico, a ideia era exercitar o desenvolvimento de software mobile utilizando o framework multiplataformas Flutter, junto da linguagem Dart.
O Jogo é destinado a todas as idades, não possui classificação por idade ou gênero.
- Corrigir o bug de limitação da tela de usuário
- Corrigir a implementação do recurso de vida do jogador
- Desenvolver um mecanismo de power-ups para o jogador
- Implementar um número maior de inimigos
- Implementar um Boss final