Classe abstrata que representa um jogo de tabuleiro. More...
#include <Jogo.hpp>


Public Member Functions | |
| Jogo (const std::string &nome, int linhas, int colunas) | |
| Construtor da classe Jogo. | |
| virtual void | iniciar ()=0 |
| Inicializa o jogo. | |
| virtual void | lerJogada (int &linha, int &coluna)=0 |
| Lê a jogada do jogador atual. | |
| virtual void | lerJogada (int &coluna)=0 |
| Lê a jogada do jogador atual (versão para Connect 4). | |
| virtual bool | validarJogada (int linha, int coluna)=0 |
| Valida a jogada do jogador. | |
| virtual bool | validarJogada (int coluna)=0 |
| Valida a jogada do jogador (versão para Connect 4). | |
| virtual bool | validarVitoria ()=0 |
| Verifica se há um vencedor ou empate. | |
| void | exibirTabuleiro () const |
| Exibe o tabuleiro do jogo. | |
| virtual int | getJogadorAtual ()=0 |
| Retorna o jogador atual. | |
| virtual | ~Jogo ()=default |
| Destrutor virtual da classe Jogo. | |
Protected Attributes | |
| const std::string | nomeJogo |
| Nome do jogo. | |
| Tabuleiro | tabuleiro |
| Tabuleiro do jogo. | |
Classe abstrata que representa um jogo de tabuleiro.
A classe Jogo define a interface básica para jogos de tabuleiro, incluindo métodos para gerenciar o estado do jogo, interagir com os jogadores e verificar condições de vitória. Classes derivadas devem implementar esses métodos para criar jogos específicos.
|
inline |
Construtor da classe Jogo.
Inicializa o jogo com um nome e as dimensões do tabuleiro.
| [in] | nome | Nome do jogo. |
| [in] | linhas | Número de linhas do tabuleiro. |
| [in] | colunas | Número de colunas do tabuleiro. |

|
virtualdefault |
Destrutor virtual da classe Jogo.
Garante que o destrutor das classes derivadas seja chamado corretamente.
|
inline |
Exibe o tabuleiro do jogo.
Chama o método exibirTabuleiro da classe Tabuleiro para mostrar o estado atual do jogo.

|
pure virtual |
Retorna o jogador atual.
Método puramente virtual que deve ser implementado pelas classes derivadas para retornar o jogador atual (1 ou 2).
Implemented in Connect4, JogoDaVelha, and Reversi.

|
pure virtual |
Inicializa o jogo.
Método puramente virtual que deve ser implementado pelas classes derivadas para configurar o estado inicial do jogo.
Implemented in Connect4, JogoDaVelha, and Reversi.

|
pure virtual |
Lê a jogada do jogador atual (versão para Connect 4).
Método puramente virtual que deve ser implementado pelas classes derivadas para ler a jogada do jogador atual (apenas coluna).
| [out] | coluna | Coluna escolhida pelo jogador. |
Implemented in Connect4, JogoDaVelha, and Reversi.
|
pure virtual |
Lê a jogada do jogador atual.
Método puramente virtual que deve ser implementado pelas classes derivadas para ler a jogada do jogador atual (linha e coluna).
| [out] | linha | Linha escolhida pelo jogador. |
| [out] | coluna | Coluna escolhida pelo jogador. |
Implemented in Connect4, JogoDaVelha, and Reversi.

|
pure virtual |
Valida a jogada do jogador (versão para Connect 4).
Método puramente virtual que deve ser implementado pelas classes derivadas para validar se a jogada é permitida (apenas coluna).
| [in] | coluna | Coluna escolhida pelo jogador. |
Implemented in Connect4, JogoDaVelha, and Reversi.
|
pure virtual |
Valida a jogada do jogador.
Método puramente virtual que deve ser implementado pelas classes derivadas para validar se a jogada é permitida.
| [in] | linha | Linha escolhida pelo jogador. |
| [in] | coluna | Coluna escolhida pelo jogador. |
Implemented in Connect4, JogoDaVelha, and Reversi.

|
pure virtual |
Verifica se há um vencedor ou empate.
Método puramente virtual que deve ser implementado pelas classes derivadas para verificar se o jogo terminou com uma vitória ou empate.
Implemented in Connect4, JogoDaVelha, and Reversi.

|
protected |
Nome do jogo.