Example #1
0
        /// <summary>
        /// Sets correct size and mine count when changing difficulty level.
        /// Also used to set board for custom game.
        /// </summary>
        /// <param name="diffLevel">Choosed difficulty level.
        /// 0 is beginner
        /// 1 is advanced
        /// 2 is expert
        /// 3 is custom game mode</param>
        public void CreateGame(int diffLevel)
        {
            this.diffLevel = diffLevel;
            switch (diffLevel)
            {
            case 0:
                GenerateBoard(10, 10, 8);
                break;

            case 1:
                GenerateBoard(16, 16, 40);
                break;

            case 2:
                GenerateBoard(30, 16, 99);
                break;

            case 3:
                GenerateBoard(customGameSize.GetXSize(), customGameSize.GetYSize(), customGameSize.GetMines());
                break;
            }
            lastGame.Save(diffLevel, customGameSize);
            isGameReplayed = false;
            stopwatch.Reset();
            gameButton.Happy();
            isGameAvailable = true;
        }