Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • app app
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Ludo Pets
  • appapp
  • Merge requests
  • !42

Merged
Created May 04, 2025 by Pedro Augusto Pereira@pereira.pedroDeveloper

feat/68-Concluir-o-minigame-de-recolher-comidas

  • Overview 0
  • Commits 1
  • Pipelines 1
  • Changes 19

O que esse MR faz?

Cria um novo jogo em que o pet deve pegar somente as comidas que o fazem bem

Screenshots

Antes Depois
image

Como configurar e validar localmente?

  1. Acessar a aba de minigames e clicar em FoodGame
  2. Clicar em começar na tela de start, e iniciar o jogo

Checklist de aceitação do MR

  1. o jogo consiste em pegar a comida correta, ao pegar uma ração, o pet ganha 10 pontos, ao pegar um doce, o pet perde uma vida
  2. o jogo possibilita a chance de caírem vidas e moedas, vidas spawnam ao ter menos de 3 vidas (não é possível ter mais de 3 vidas), moedas são raras, mas aumentam chances de spawnarem a cada 100 pontos
  3. no final do jogo, são exibidas as moedas, a pontuação e uma mensagem de lembrete para cuidados com o alimento do pet

Obs: ainda não tenho um modelo de imagem para o cachorro

Explicação de arquivos:

Index: é o component pai, nele renderizamos o jogo, ou as telas de inicio e fim com base no status

GameManager: guarda todos os principais estados e funções do jogo, é um hook criado para gerenciar toda lógica, deste o start do jogo até aumento de dificuldade e testes de colisão

Character: é o componente que renderiza o player do jogo, é memoizado para evitar travamentos, apenas renderizando novamente quando a posição do GameManager é alterada

Foods: arquivo que possui a lista das comidas em tela e possui a função de criação das comidas, é responsável pelo listener que atualiza o y de cada comida e trigga o useEffect do Renderer, para enfim testar as colisões.

Renderer: Renderiza os componentes do jogo, faz um animate para as comidas, usando a velocidade com base na dificuldade atual, renderiza o player, contém o PanResponder que movimenta o player, e também exibe a barra de status

GameConfig: contém o default do game, todos os valores iniciais, de velocidade, spawn, tamanho de tela, tamanho de comida, tamanho de player, etc.

Obs: qualquer coisa podem me chamar pois algumas partes do código podem ter ficado confusas

Edited May 04, 2025 by Pedro Augusto Pereira
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: feat/68-Concluir-o-minigame-de-recolher-comidas