Este é um jogo de cartas desenvolvido com Flutter e Flame Engine, onde o jogador e o computador se enfrentam utilizando cartas com diferentes valores de ataque, defesa e vida. O jogo inclui animações, efeitos sonoros e uma mecânica de combate simples.Foi desenvolvido com o intuito de aprender mais sobre a Flame Engine e o Flutter sendo um projeto bem simples.
- Combate por turnos entre o jogador e o computador.
- Cartas com diferentes valores de ataque e defesa.
- Sistema de pontos de vida com barras de vida para cada carta.
- Animações de ataque e perda de vida.
- Efeitos sonoros para ataque, vitória e derrota.
- Interface interativa com toque para selecionar cartas.
gameplay.mp4
![]() |
![]() |
![]() |
![]() |
Para rodar o projeto, você precisará de:
- Flutter (versão 3.x ou superior)
- Flame Engine
- AudioPlayers para tocar os efeitos sonoros
-
Clone o repositório:
git clone https://github.com/Sub-Dev/card_game.git
-
Navegue até a pasta do projeto:
cd card_game
-
Instale as dependências:
flutter pub get
-
Executar na web
flutter run -d chrome
- Ao iniciar o jogo, você verá quatro cartas disponíveis.
- Toque em uma carta para jogá-la contra o computador.
- As cartas do jogador e do computador serão comparadas em termos de ataque e defesa.
- O jogo terminará quando todas as cartas de um dos lados perderem toda a sua vida.
- Toque na carta: Seleciona a carta do jogador para atacar.
- Toque na tela após o jogo terminar: Reinicia o jogo.
- Cada carta possui valores distintos de ataque e defesa.
- Quando a carta do jogador ataca, o dano será calculado com base no valor de ataque do jogador comparado à defesa do computador e se foi um dano critico.
- O computador também contra-atacará na mesma rodada.
- O jogo termina quando todas as cartas de um dos lados forem derrotadas (perderem todos os pontos de vida).
- game.dart: Contém a lógica principal do jogo, incluindo as animações, eventos de toque e sistema de combate.
- status_background_component.dart: Controla o fundo da área de status do jogo, onde as informações de vida e dano são exibidas.
- Cartas: Cada carta tem uma imagem correspondente que é exibida no jogo (card_0.png, card_1.png, etc.).
- Efeitos sonoros: Sons para ataques, vitória e derrota são tocados durante o jogo.
- Para adicionar novas cartas, edite as listas cards, cardNames, cardAttack e cardDefense no arquivo card_game.dart.
- Adicione as imagens das novas cartas na pasta assets/images/ e os sons em assets/sounds/.
- As animações de vitória e derrota podem ser personalizadas editando os sprites correspondentes em victory_animation.png e defeat_animation.png.
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e enviar pull requests.
|
Anthony Marin (Sub-Dev) - Perfil no GitHub |
Este projeto está licenciado sob a Licença MIT.