![]() |
Velha Jedi
1.1
Jogo da velha invencível
|
Contém as funções responsáveis pelas jogadas feitas pelo PC. Mais...
#include <cstdlib>
#include <string>
#include "ia.hpp"
#include "ia_util.hpp"
#include "../util.hpp"
#include "../gui/resultado.hpp"
Vá para o código-fonte deste arquivo.
Funções | |
void | calcula_jogada (char *t) |
void | escolha_do_pc (GtkWidget *widget) |
void | pc_faz_jogada (GtkWidget **casas) |
Contém as funções responsáveis pelas jogadas feitas pelo PC.
Definição no arquivo ia.cpp.
void calcula_jogada | ( | char * | t | ) |
Calcula a melhor jogada a ser feita pelo computador e executa a jogada. Para isso, o seguinte algorítmo é seguido: -Se puder vencer o jogo, vença; -Se não, e se a vitória do oponente estiver eminente, impeça; -Se não, e se o meio do tabuleiro está vazio, jogue no meio; -Se não, e se o oponente estiver armanando uma armadilha, impeça; -Se não, e se for possivel criar armadilha, crie; -Se não, jogue aleatóriamente
t | o tabuleiro |
Definição na linha 27 do arquivo ia.cpp.
Referências e_vitoria().
Referenciado por pc_faz_jogada().
void escolha_do_pc | ( | GtkWidget * | widget | ) |
Executa uma jogada do computador do ponto de vista da GUI.
widget | o botão "apertado" pelo computador |
Definição na linha 121 do arquivo ia.cpp.
Referenciado por pc_faz_jogada().
void pc_faz_jogada | ( | GtkWidget ** | casas | ) |
Representa uma jogada o computador
casas | os botões do tabuleiro |
Definição na linha 132 do arquivo ia.cpp.
Referências analise_do_tabuleiro(), calcula_jogada(), converte_widgets_para_chars() e escolha_do_pc().
Referenciado por Tabuleiro::clique() e Tabuleiro::vez_de_jogar().