public void newMove(int column = -1) { if (column == -1) { column = getComputerMove(); } if (state.spaceInColumn(column)) { if (first_move) { first_move = false; } int row = state.newMove(column, player_turn); string checker_name = players[player_turn].color.ToLower() + row + column; Image checker = (Image)window.FindName(checker_name); checker.Visibility = System.Windows.Visibility.Visible; players[player_turn].moveMade(); state.calculateWinningRows(); players[player_turn].setWinningRows(state.players_winning_rows[player_turn], state.players_winning_rows[(player_turn + 1) % 2]); players[(player_turn + 1) % 2].setWinningRows(state.players_winning_rows[(player_turn + 1) % 2], state.players_winning_rows[player_turn]); window.Stats1_TextBlock.Text = players[0].getString(); window.Stats2_TextBlock.Text = players[1].getString(); if (state.checkIfFinished(row, column)) { game_started = false; players[player_turn].win = true; window.Turn_TextBlock.Text = "PLAYER " + players[player_turn].color + " WINS!"; } else if (state.checkIfTied()) { game_started = false; window.Turn_TextBlock.Text = "IT IS A TIE!"; } if (game_started) { swapPlayer(); } } if (isCPUMove()) { newMove(); } }
public GameState(MainWindow window) { checkers_count = 0; players_winning_rows = new int[2]; players_winning_rows[0] = 0; players_winning_rows[1] = 0; for (int column = 0; column < 7; column++) { for (int row = 0; row < 6; row++) { board[row, column] = -1; Image yellow = (Image)(window.FindName("yellow" + row.ToString() + column.ToString())); Image red = (Image)(window.FindName("red" + row.ToString() + column.ToString())); red.Visibility = System.Windows.Visibility.Hidden; yellow.Visibility = System.Windows.Visibility.Hidden; } column_count[column] = 0; } }