Пример #1
0
        /// <summary>
        /// Sets all ships on the field.
        /// </summary>
        public void SetAllShips()
        {
            HomeField.SetPatternField();

            /* if (!IsShipSettedAndIterationsNotOverflow(ShipType.Four))
             * {
             *   SetAllShips();
             *   return;
             * }
             * PrintHomeField();
             * for (int i = 0; i < 2; i++)
             * {
             *   if (!IsShipSettedAndIterationsNotOverflow(ShipType.Three))
             *   {
             *       SetAllShips();
             *       return;
             *   }
             * }
             * PrintHomeField();
             * for (int i = 0; i < 3; i++)
             * {
             *   if (!IsShipSettedAndIterationsNotOverflow(ShipType.Two))
             *   {
             *       SetAllShips();
             *       return;
             *   }
             * }
             * PrintHomeField();
             * for (int i = 0; i < 2; i++)
             * {
             *   if (!IsShipSettedAndIterationsNotOverflow(ShipType.Four))
             *   {
             *       SetAllShips();
             *       return;
             *   }
             * }
             * PrintHomeField();
             */
        }
Пример #2
0
        /// <summary>
        /// Sets all ships on the field.
        /// </summary>
        public void SetAllShips()
        {
            UI.ImportantMessage("Начался процесс утсановки кораблей!");
            UI.Message("Заполнить поле автоматически, вручную или шаблоном? А - 'Автоматически'; Р  - 'Вручную'; Ш - 'Шаблон'");
            string filled = "Ш";

            filled = UI.ReadLine();
            if (String.IsNullOrEmpty(filled))
            {
                filled = "Ш";
            }

            if (filled.Trim().First().ToString() == "А")
            {
                AIPlayer aiplayer = new AIPlayer();
                aiplayer.SetHomeField((BaseField)HomeField);
                aiplayer.SetAllShips();

                UI.OKMessage("Корабли утсановлены атвоматически!");
                return;
            }
            if (filled.Trim().First().ToString() == "Ш")
            {
                HomeField.SetPatternField();
                UI.OKMessage("Корабли утсановлены шаблоном!");
                return;
            }

            UI.OKMessage("Корабли утсанавливаются вручную!");

            PrintHomeField();
            bool isSettedShipFour = false;

            while (!isSettedShipFour)
            {
                isSettedShipFour = SetShip(ShipType.Four);
            }
            PrintHomeField();

            bool isSettedShipThree = false;

            while (!isSettedShipThree)
            {
                isSettedShipThree = SetShip(ShipType.Three);
            }
            PrintHomeField();
            isSettedShipThree = false;
            while (!isSettedShipThree)
            {
                isSettedShipThree = SetShip(ShipType.Three);
            }
            PrintHomeField();

            bool isSettedShipTwo = false;

            while (!isSettedShipTwo)
            {
                isSettedShipTwo = SetShip(ShipType.Two);
            }
            PrintHomeField();
            isSettedShipTwo = false;
            while (!isSettedShipTwo)
            {
                isSettedShipTwo = SetShip(ShipType.Two);
            }
            PrintHomeField();
            isSettedShipTwo = false;
            while (!isSettedShipTwo)
            {
                isSettedShipTwo = SetShip(ShipType.Two);
            }
            PrintHomeField();

            bool isSettedShipOne = false;

            while (!isSettedShipOne)
            {
                isSettedShipOne = SetShip(ShipType.One);
            }
            PrintHomeField();
            isSettedShipOne = false;
            while (!isSettedShipOne)
            {
                isSettedShipOne = SetShip(ShipType.One);
            }
            PrintHomeField();
            isSettedShipOne = false;
            while (!isSettedShipOne)
            {
                isSettedShipOne = SetShip(ShipType.One);
            }
            PrintHomeField();
            isSettedShipOne = false;
            while (!isSettedShipOne)
            {
                isSettedShipOne = SetShip(ShipType.One);
            }
            PrintHomeField();
        }