private bool userSquareOrQuitFromGameChoice()
    {
        byte   row               = 0;
        byte   column            = 0;
        string playerChoice      = string.Empty;
        bool   usertypedQKeyword = false;

        Console.WriteLine("{1}It's {0}'s turn!{1}Enter your desired square (For example: A3) or press Q to quit", s_TheGame.GetCurrentPlayerName(), Environment.NewLine);
        playerChoice      = Console.ReadLine();
        usertypedQKeyword = this.endGameSessionAndQuitFromGame(playerChoice);
        while (!this.userMovementValidation(ref row, ref column, playerChoice) && !usertypedQKeyword)
        {
            if (isPlayerSquareOnBoardChoiceInValidFormat(playerChoice))
            {
                Console.WriteLine("You have typed illegal input. Please try again.");
            }
            else
            {
                Console.WriteLine("You have typed illegal format input. Please try again.");
            }

            playerChoice      = Console.ReadLine();
            usertypedQKeyword = this.endGameSessionAndQuitFromGame(playerChoice);
        }

        if (!usertypedQKeyword)
        {
            s_TheGame.AddTokenFromUserToBoard(row, column);
            s_TheGame.AddWonTokensToBoard(row, column);
        }

        return(usertypedQKeyword);
    }
Пример #2
0
    private void setComputerDecisions()
    {
        OthelloGame.eGameToken[,] matrixOfTheGameToRemember      = new OthelloGame.eGameToken[m_TheGame.GameBoardSize, m_TheGame.GameBoardSize];
        OthelloGame.eGameToken[,] matrixOfTheGameToDecisionsTree = m_TheGame.GameStatus;

        for (byte i = 0; i < m_TheGame.GameBoardSize; ++i)
        {
            for (byte j = 0; j < m_TheGame.GameBoardSize; ++j)
            {
                CopyTokensMatrice(matrixOfTheGameToDecisionsTree, matrixOfTheGameToRemember, m_TheGame.GameBoardSize);
                if (m_TheGame.IsLegalMovement(i, j))
                {
                    m_TheGame.AddTokenFromUserToBoard(i, j);
                    m_TheGame.AddWonTokensToBoard(i, j);
                    m_MinimaxTree.AddDesicionToTree(i, j, matrixOfTheGameToDecisionsTree, ComputerToken);
                    CopyTokensMatrice(matrixOfTheGameToRemember, matrixOfTheGameToDecisionsTree, m_TheGame.GameBoardSize);
                }
            }
        }
    }