TP_PDS2
Sistema para gestão de jogadores e execução de jogos clássicos
 
Loading...
Searching...
No Matches
Connect4 Class Reference

Classe que implementa o jogo Connect 4. More...

#include <Connect4.hpp>

Inheritance diagram for Connect4:
Collaboration diagram for Connect4:

Public Member Functions

 Connect4 ()
 Construtor da classe Connect4.
 
void iniciar () override
 Inicializa o jogo.
 
void lerJogada (int &coluna) override
 Lê a jogada do jogador atual (versão para Connect 4).
 
void lerJogada (int &coluna, int &linha) override
 Lê a jogada do jogador atual (versão não utilizada).
 
bool validarJogada (int coluna) override
 Valida a jogada do jogador (versão para Connect 4).
 
bool validarJogada (int linha, int coluna) override
 Valida a jogada do jogador (versão não utilizada).
 
bool validarVitoria () override
 Verifica se há um vencedor ou empate.
 
int getJogadorAtual () override
 Retorna o jogador atual.
 
- Public Member Functions inherited from Jogo
 Jogo (const std::string &nome, int linhas, int colunas)
 Construtor da classe Jogo.
 
void exibirTabuleiro () const
 Exibe o tabuleiro do jogo.
 
virtual ~Jogo ()=default
 Destrutor virtual da classe Jogo.
 

Private Attributes

int jogadorAtual
 Indica o jogador atual (1 ou 2).
 

Additional Inherited Members

- Protected Attributes inherited from Jogo
const std::string nomeJogo
 Nome do jogo.
 
Tabuleiro tabuleiro
 Tabuleiro do jogo.
 

Detailed Description

Classe que implementa o jogo Connect 4.

O Connect 4 é um jogo de estratégia em que os jogadores alternam turnos para inserir peças em uma coluna do tabuleiro. O objetivo é ser o primeiro a alinhar quatro peças consecutivas.

Constructor & Destructor Documentation

◆ Connect4()

Connect4::Connect4 ( )

Construtor da classe Connect4.

Inicializa o jogo com um tabuleiro 6x7 e define o jogador 1 como o primeiro a jogar.

Here is the call graph for this function:

Member Function Documentation

◆ getJogadorAtual()

int Connect4::getJogadorAtual ( )
overridevirtual

Retorna o jogador atual.

Returns
int O jogador atual (1 ou 2).

Implements Jogo.

◆ iniciar()

void Connect4::iniciar ( )
overridevirtual

Inicializa o jogo.

Exibe uma mensagem de boas-vindas e prepara o tabuleiro para o início do jogo.

Implements Jogo.

◆ lerJogada() [1/2]

void Connect4::lerJogada ( int & coluna)
overridevirtual

Lê a jogada do jogador atual (versão para Connect 4).

Solicita ao jogador atual que insira a coluna onde deseja jogar.

Parameters
[out]colunaColuna escolhida pelo jogador (1-7).

Implements Jogo.

◆ lerJogada() [2/2]

void Connect4::lerJogada ( int & coluna,
int & linha )
overridevirtual

Lê a jogada do jogador atual (versão não utilizada).

Este método é mantido para compatibilidade com a interface base, mas não é utilizado no Connect 4, pois o jogo só requer a escolha de uma coluna.

Parameters
[out]colunaColuna escolhida pelo jogador.
[out]linhaLinha (não utilizada no Connect 4).

Implements Jogo.

◆ validarJogada() [1/2]

bool Connect4::validarJogada ( int coluna)
overridevirtual

Valida a jogada do jogador (versão para Connect 4).

Verifica se a coluna escolhida é válida e se há espaço disponível nela.

Parameters
[in]colunaColuna escolhida pelo jogador.
Returns
true Se a jogada é válida.
false Se a jogada é inválida (coluna cheia ou fora do intervalo).

Implements Jogo.

◆ validarJogada() [2/2]

bool Connect4::validarJogada ( int linha,
int coluna )
overridevirtual

Valida a jogada do jogador (versão não utilizada).

Este método é mantido para compatibilidade com a interface base, mas não é utilizado no Connect 4, pois o jogo só requer a escolha de uma coluna.

Parameters
[in]linhaLinha (não utilizada no Connect 4).
[in]colunaColuna escolhida pelo jogador.
Returns
true Se a jogada é válida.
false Se a jogada é inválida.

Implements Jogo.

◆ validarVitoria()

bool Connect4::validarVitoria ( )
overridevirtual

Verifica se há um vencedor ou empate.

Verifica todas as possíveis combinações de quatro peças consecutivas no tabuleiro (horizontal, vertical e diagonal) para determinar se o jogo terminou.

Returns
true Se houver um vencedor ou empate.
false Se o jogo deve continuar.

Implements Jogo.

Member Data Documentation

◆ jogadorAtual

int Connect4::jogadorAtual
private

Indica o jogador atual (1 ou 2).


The documentation for this class was generated from the following files: