public GameController()
        {
            Position position = new Position(0, 0);

            map   = new Map(400, 400);
            snake = new Snake.Models.Snake(position, Direction.Down, 3);
        }
示例#2
0
        static void Main(string[] args)
        {
            Console.SetBufferSize(120, 50);

            /*
             * Инициализация змейки с длиной тела, равной 3 и игрового поля.
             * Начальное положение змейки в центре игрового поля.
             */
            GameBorders gameBorders = new GameBorders(120, 50);

            Models.Snake snake = new Models.Snake(new Point(60, 25),
                                                  Direction.Right, 3
                                                  );

            FoodGenerator gen       = new FoodGenerator(120, 50);
            Point         foodPoint = gen.GenerateFood();

            foodPoint.Draw(gen.symbol);

            /*
             * Обработка нажатий клавиш управления пользователем
             */
            while (true)
            {
                if (snake.IsHitWall(gameBorders.borders) || snake.IsHitTail())
                {
                    break;
                }

                if (snake.Eat(foodPoint))
                {
                    foodPoint = gen.GenerateFood();
                    foodPoint.Draw(gen.symbol);
                }
                else
                {
                    snake.Move();
                }

                Thread.Sleep(100);

                if (Console.KeyAvailable)
                {
                    ConsoleKeyInfo key = Console.ReadKey();
                    snake.ButtonHandler(key.Key);
                }
            }

            WriteGameOver();
            Console.ReadLine();
        }
示例#3
0
        public static void Init()
        {
            isActive = true;
            snake = new Snake();
            food = new Food();
            wall = new Wall();

            // bastapkida paida bolatin jerler
            snake.body.Add(new Point { x = 1, y = 1 });
            food.body.Add(new Point { x = 1, y = 2 });

            food.color = ConsoleColor.Green;
            wall.color = ConsoleColor.White;
            snake.color = ConsoleColor.Yellow;

            Console.SetWindowSize(90, 20);
            // oin otetin bolikterdi rewetkalarmen korwau
            for (int i = 0; i <= 40; i++)
            {
                wall.body.Add(new Point { x = i, y = 0 });
                wall.body.Add(new Point { x = i, y = 15 });
            }
            for (int i = 0; i <= 15; i++)
            {
                wall.body.Add(new Point { x = 0, y = i });
                wall.body.Add(new Point { x = 40, y = i });
            }
            for (int i = 43; i <= 65; i++)
            {
                wall.body.Add(new Point { x = i, y = 0 });
                wall.body.Add(new Point { x = i, y = 5 });
            }
            for (int i = 0; i <= 5; i++)
            {
                wall.body.Add(new Point { x = 43, y = i });
                wall.body.Add(new Point { x = 65, y = i });
            }

        }