Bopycat.Form1.StartNew C# (CSharp) Method

StartNew() private method

private StartNew ( ) : void
return void
        private void StartNew()
        {
            currentGameState = new GameState(GameType.Money);
            currentGameState.Stake = 1;
            currentGameState.Limit = 8;
            currentGameState.Board.InitializeBoard(BackgammonVariation.Standard);
            currentGameState.PlayerOnRoll = 0;
            currentGameState.PlayerOnTurn = 0;

            int[] startRoll = new int[2] { 0, 0 };
            while (startRoll[0] == startRoll[1])
            {
                startRoll[0] = random.Next(1, 7);
                startRoll[1] = random.Next(1, 7);
            }
            currentGameState.SetDice(startRoll[0], startRoll[1]);

            currentGameState.PlayerOnRoll = currentGameState.PlayerOnTurn = random.Next(2);
            SetTurn(currentGameState.PlayerOnTurn);

            if (currentGameState.PlayerOnTurn == 1)
                HandleAI();
            else
            {
                unusedDice.AddRange(currentGameState.Dice);

                if (currentGameState.Dice[0] == currentGameState.Dice[1])
                    unusedDice.AddRange(currentGameState.Dice);

                legalPlays = currentGameState.Board.LegalPlays(currentGameState.PlayerOnRoll, currentGameState.Dice);

                originalGameState = currentGameState.Clone();
            }

            UpdateControls();
        }