Пример #1
0
        private static void PlayBlock(Game.StructBlock sbBlock, Boolean isNew)
        {
            if (isNew)
            {
                // create new block
                sbBlock = Tetris.Block.Generate();
            }
            else
            {
                Tetris.SendToField(ptBlock, wrBlockAdj);
            }

            Tetris.Block.Assign(sbBlock);
            Tetris.Block.Build();
            Tetris.Block.Adjustment(ref wrBlockAdj);

            ptBlock.x = (PlayWindow.left - wrBlockAdj.left) + (PlayWindow.width - wrBlockAdj.width) / 2;
            ptBlock.y = PlayWindow.top;

            Tetris.Block.Draw(ptBlock, wrBlockAdj, true);
            ShowNextBlock();

            if (Tetris.IsCollided(ptBlock, wrBlockAdj))
            {
                sndEffect.Play(global::prjTetris.Properties.Resources.S102);
                Console.SetCursorPosition((Console.WindowWidth - msg3.Length) / 2,
                                          Console.WindowHeight / 2);
                Console.Write(msg3);

                isGameExit = true;
            }
            else
            if (isRows)
            {
                // rows completed
                sndEffect.Play(global::prjTetris.Properties.Resources.S103);
                isRows = false;
            }
            else
            {
                sndEffect.Play(global::prjTetris.Properties.Resources.S100);
            }
        }
Пример #2
0
        private static void ShowNextBlock()
        {
            nextBlock = Tetris.Block.Generate(); // get next block

            Console.ForegroundColor = ConsoleColor.White;
            Console.SetCursorPosition(PlayWindow.width + PlayWindow.left + 4, 8);
            Console.Write("Next");
            Console.SetCursorPosition(PlayWindow.width + PlayWindow.left + 2, 9);
            Console.Write("¤¤¤¤¤¤¤¤");

            for (int i = 1; i <= 6; i++)
            {
                Console.SetCursorPosition(PlayWindow.width + PlayWindow.left + 2, i + 9);
                Console.Write("¤      ¤");
            }

            Console.SetCursorPosition(PlayWindow.width + PlayWindow.left + 2, 15);
            Console.Write("¤¤¤¤¤¤¤¤");
            Console.ResetColor();

            Tetris.Block.Preview(new Point(PlayWindow.width + PlayWindow.left + 6, 12), nextBlock);
        }