Пример #1
0
        } //end UpdatePlayersGuiLocations

        /// <summary>
        /// Event handler for roll button. Plays either single round or single step.
        /// Pre:  No of players and single step option selected
        /// Post:  tableLayoutPanel and dataGridView updated
        /// </summary>
        private void rolButton_Click(object sender, EventArgs e)
        {
            UpdatePlayersGuiLocations(TypeOfGuiUpdate.RemovePlayer);

            // Split functionality based on groupBox selection
            if (yesRadioButton.Checked == true)   // single step mode
            {
                SpaceRaceGame.PlayRoundSingleStep();
            }
            else   // play complete round
            {
                SpaceRaceGame.PlayOneRound();
            }

            UpdatePlayersGuiLocations(TypeOfGuiUpdate.AddPlayer);
            UpdatesPlayersDataGridView();

            // Update GUI controls
            if (SpaceRaceGame.playerTurnCounter == SpaceRaceGame.NumberOfPlayers)
            {
                resetButton.Enabled = true;
                exitButton.Enabled  = true;
            }
            else
            {
                resetButton.Enabled = false;
                exitButton.Enabled  = false;
            }

            playersDataGridView.Enabled = false;
            comboBox1.Enabled           = false;

            // check if users have completed the game on current round
            if (SpaceRaceGame.GameComplete == true && SpaceRaceGame.playerTurnCounter == SpaceRaceGame.NumberOfPlayers)
            {
                rolButton.Enabled = false;
                displayWinners();
            }
        }