//nome e sorteio da primeira a jogar public void inicializa_game() { //define o nome das pessoas Desenho.apresentacao(); Entrada.get_nomes(pessoa1, pessoa2); sorteia_first();//escolhe primeira pessoa a jogar //a primeira fica com o X Desenho.mostra_first(pessoa1, pessoa2); Desenho.instrucoes(); }
}//fim da função star_game() //encerra a partida public void end_game() { //verifica vencedor if(vencedor == pessoa1.get_simbolo()) Desenho.mostra_resultado(pessoa1); else if (vencedor == pessoa2.get_simbolo()) Desenho.mostra_resultado(pessoa2); else Desenho.mostra_empate(); //mostra tabuleiro final Desenho.desenha_tabuleiro(tabuleiro); Console.Write("Precione qualquel tecla para encerrar! . . . "); Console.ReadKey(true); }
//game loop - enquanto for possível jogar... public void start_game() { //variáveis locais a fução bool empate = false; bool vitoria = false; //char vencedor = '-'; int contador = 0; //enquanto não for vitória ou não for empate while (!(vitoria) && !(empate)) { //variáveis locais ao escopo do while char eh_vitoria; int posicao = 0; //um jogador por turno if (pessoa1.get_turno()) { Desenho.desenha_tabuleiro(tabuleiro); //pega a posicao da jogada escolhida posicao = Entrada.pega_jogada(pessoa1, tabuleiro); //passa o turno pessoa1.set_turno(false); pessoa2.set_turno(true); Atualizacao.set_jogada(pessoa1, tabuleiro, posicao); eh_vitoria = Atualizacao.eh_vitoria(tabuleiro); Console.Clear(); //caso alguem ganhe if (eh_vitoria == 'X') { vitoria = true; vencedor = 'X'; } else if (eh_vitoria == 'O') { vitoria = true; vencedor = 'O'; } contador++; //controla quantidade de jogadas } else if (pessoa2.get_turno()) { Desenho.desenha_tabuleiro(tabuleiro); posicao = Entrada.pega_jogada(pessoa2, tabuleiro); pessoa2.set_turno(false); pessoa1.set_turno(true); Atualizacao.set_jogada(pessoa2, tabuleiro, posicao); eh_vitoria = Atualizacao.eh_vitoria(tabuleiro); Console.Clear(); if (eh_vitoria == 'X') { vitoria = true; vencedor = 'X'; } else if (eh_vitoria == 'O') { vitoria = true; vencedor = 'O'; } contador++; } if (contador >=9) // se não houver vitoria até o nono turmo empate = true; }//fim do while (vitoria ou empate) }//fim da função star_game()