Este jogo é baseado em um sistema de tabuleiro, que se desenrola em rodadas. Estas, por sua vez, possuem etapas distintas, que ocorrem de forma discreta e consecutiva. Como o Unity é uma engine fundamentalmente "real-time", é preciso criar alguma maneira de pausar a execução dos programas de acordo com cada fase do jogo.
Para isso, criei uma Finite State Machine para os diversos objetos do jogo. Cada um possui diversos "estados" que são modificados a cada etapa da partida. Enquanto um estado não muda, o jogo fica apenas processando a interface com o usuário e deixa a lógica do jogo em pausa. Assim é possível cadenciar o gameplay, conforme as regras do jogo.
Nenhum comentário:
Postar um comentário