Skip to content

Gerenciador Geral

André L. Alvares edited this page Oct 17, 2019 · 3 revisions

O Gerenciador Geral cuida dos aspectos gerais do jogo, sendo eles:

  • Pontuação de cada jogador
  • Quantos pontos o jogador ganha por minijogo ganho (e outras regras similares similares)
  • Quantos jogadores estão jogando
  • Inventário dos jogadores
  • Gerenciamento de cenas (menu -> tabuleiro <--> minijogo)

Pontuação de cada jogador

A pontuação é dada por um simples arranjo de inteiros de tamanho 4 (que é a quantidade máxima de jogadores). Utiliza-se a conversão de um valor do JogadorID pra inteiro para obter o índice correspondente ao jogador, mas isso é só uma abstração para jogador 1 = 0; jogador 2 = 1; etc).

Quantos jogadores estão jogando

Variável inteira simples, entretanto se usa função de cadastrar e descadastrar jogador para mudar esse valor. Ela não deve ser modificada fora do Gerenciador Geral.

Inventário dos jogadores

Pendente.

Gerenciamento de Cenas

O Gerenciador Geral não faz nada por conta própria, ao invés disso, expõe funções para que os "gerenciadores locais" as executem. A transição de cena mais importante é entre tabuleiro e vice-versa. Neste, para quando de tabuleiro para minijogo, o gerenciador do tabuleiro executa a função do Gerenciador Geral para transitar para tal minijogo (através da enumeração CenaID). A transição é simples, entretanto o contrário nem tanto. De minijogo para tabuleiro, o gerenciador de minijogo precisa executar uma função específica que informa o jogador vitorioso, para então fazer a transição.

Obs: Define-se como transição a execução das rotinas para fechar a cena ativa e abrir a próxima cena, ainda não foi definido se há uma transição visual e nem se o carregamento será assíncrono