Exemplo n.º 1
0
        static void Main(string[] args)
        {
            DrawerProvider.Drawer.InitField();

            SetTimer();

            currentFigure = factory.GetNewFigure();
            currentFigure.Draw();
            GraphicsWindow.KeyDown += GraphicsWindow_KeyDown;
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Console.SetWindowSize(Field.Width, Field.Hight);
            // что бы убрать полосы прокрутки
            Console.SetBufferSize(Field.Width, Field.Hight);

            // Field.Width = 20;

            _generator    = new FigureGenerator(Field.Width / 2, 0, Drawer.DEFAULT_SYMBOL);
            currentFigure = _generator.GetNewFigure();
            SetTimer();

            while (true)
            {
                // Если была нажата какая либо клавиша
                if (Console.KeyAvailable)
                {
                    var key = Console.ReadKey();
                    Monitor.Enter(_lockObject);
                    var result = HandleKey(currentFigure, key);
                    ProcessResult(result, ref currentFigure);
                    Monitor.Exit(_lockObject);
                }
            }
        }
Exemplo n.º 3
0
        private static bool ProcessResult(Result result, ref Figure currentFigure)
        {
            if (result == Result.HeapStrike || result == Result.DownBorderStrike)
            {
                Field.AddFigure(currentFigure);
                Field.TryDeleteLines();
                currentFigure = _generator.GetNewFigure();
                return(true);
            }

            return(false);
        }
Exemplo n.º 4
0
 private static bool ProcessResult(Result result, ref Figure currentFigure)
 {
     if (result == Result.HEAP_STIRKE || result == Result.DOW_BORDER_STRIKE)
     {
         Field.AddFigure(currentFigure);
         currentFigure = figureGenerator.GetNewFigure();
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            Console.SetWindowSize(Field.Width, Field.HEIGHT);
            Console.SetBufferSize(Field.Width, Field.HEIGHT);

            FigureGenerator generator     = new FigureGenerator(20, 0, '*');
            Figure          currentFigure = generator.GetNewFigure();

            while (true)
            {
                if (Console.KeyAvailable)
                {
                    var key = Console.ReadKey();
                    HandleKey(currentFigure, key);
                }
            }
        }
Exemplo n.º 6
0
        static void Main(string[] args)
        {
            Console.SetWindowSize(Field.Width, Field.Height);
            Console.SetBufferSize(Field.Width, Field.Height);

            figureGenerator = new FigureGenerator('#');
            Figure currentFigure = figureGenerator.GetNewFigure();

            while (true)
            {
                if (Console.KeyAvailable)
                {
                    var key    = Console.ReadKey();
                    var result = HandleKey(currentFigure, key.Key);
                    ProcessResult(result, ref currentFigure);
                }
            }
        }
Exemplo n.º 7
0
        static void Main(string[] args)
        {
            DrawerProvider.Drawer.InitField();

            generator     = new FigureGenerator(Field.Width / 2, 0);
            currentFigure = generator.GetNewFigure();
            SetTimer();

            while (true)
            {
                if (Console.KeyAvailable)
                {
                    var key = Console.ReadKey();
                    Monitor.Enter(_lockedObject);
                    var result = HandleKey(currentFigure, key.Key);
                    ProcessResult(result, ref currentFigure);
                    Monitor.Exit(_lockedObject);
                }
            }
        }
Exemplo n.º 8
0
        static void Main(string[] args)
        {
            Console.SetWindowSize(Field.Width, Field.Height);
            Console.SetBufferSize(Field.Width, Field.Height);

            generator = new FigureGenerator(Field.Width / 2, 0, Drawer.DEFAULT_SYMBOL);
            Figure currentFigure = generator.GetNewFigure();


            while (true)
            {
                if (Console.KeyAvailable)
                {
                    var key = Console.ReadKey();
                    Monitor.Enter(_lockObject);
                    var result = HandleKey(currentFigure, key.Key);
                    ProcessResult(result, ref currentFigure);
                    Monitor.Exit(_lockObject);
                }
            }
        }
Exemplo n.º 9
0
 private static bool ProcessResult(Result result, ref Figure currentFigure)
 {
     if (result == Result.HEAP_STRIKE || result == Result.DOWN_BORDER_STRIKE)
     {
         Field.Addfigure(currentFigure);
         Field.TryDeleteLines();
         if (currentFigure.IsOnTop())
         {
             WriteGameOver();
             timer.Elapsed -= OnTimedEvent;
             return(true);
         }
         else
         {
             currentFigure = generator.GetNewFigure();
             return(false);
         }
     }
     else
     {
         return(false);
     }
 }