protected void playGame()
        {
            bool playGame = true;

            if (loadedGame == false)
            {
                m_mainMenuView.showYahtzeeHeader();
                m_mainMenuView.showYahtzeMenu();
                m_yahtzeeGame.chooseNumberOfPlayers();
            }

            playerList = m_yahtzeeGame.getPlayers();
            do
            {
                m_mainMenuView.showYahtzeeHeader();
                m_yahtzeeView.showBoard(playerList);

                for (int i = 0; i < playerList.Count; i++)
                {
                    m_yahtzeeView.showPlayersTurn(playerList[i]);
                    m_yahtzeeView.rollTheDiceMessage();

                    while (true)
                    {
                        try
                        {
                            m_yahtzeeView.showSaveMessage();

                            //check if player list holds a computer player
                            //then skip read key and switch statement and do the
                            //call the computer roll sequence
                            //read more in the ComputerPlayer class

                            var input = Console.ReadKey();
                            switch (input.Key)
                            {
                            case ConsoleKey.R:
                                int[] dices = sequenceRollOfDices(playerList[i]);
                                m_yahtzeeView.showWereToPlaceScore();
                                switch (versionOfGame)
                                {
                                case 1:
                                    playerList[i].placePlayerScore(dices);
                                    break;

                                case 2:
                                    //Adds 1 to numbers of turns the player as done, 13 is max
                                    playerList[i].addOneToNumbersOfTurn();
                                    playerList[i].placePlayerScoreInOrder(dices, playerList[i].getNumbersOfTurn());
                                    break;
                                }

                                playerList[i].updateUpperScore();
                                playerList[i].updateTotalScore();

                                m_mainMenuView.showYahtzeeHeader();
                                m_yahtzeeView.showBoard(playerList);
                                if (playerList[i].checkIfEndOfGame())
                                {
                                    playGame = false;
                                }

                                break;

                            case ConsoleKey.S:
                                m_yahtzeeGame.saveOnGoingGame();
                                m_mainMenuView.showPressAnyKeyToQuit();
                                Console.ReadLine();
                                Environment.Exit(0);
                                break;

                            case ConsoleKey.Escape:
                                Environment.Exit(0);
                                break;
                            }
                            break;
                        }
                        catch (Exception)
                        {
                            m_mainMenuView.showYahtzeeHeader();
                            m_yahtzeeView.showBoard(playerList);
                            m_yahtzeeView.showPlayersTurn(playerList[i]);
                            m_yahtzeeView.rollTheDiceMessage();
                        }
                    }
                    playerList[i].setDate();
                }
            } while (playGame);

            m_mainMenuView.showPressAnyKeyToGoBackToMainMenu();
            m_yahtzeeGame.saveEndGameScore();
            Console.ReadLine();
            MasterController mc = new MasterController();

            mc.run();
        }