Beispiel #1
0
        void ExecuteWorldLogic()
        {
            if (++i >= maxLevel)            //ожидаем, когда нужно будет сдвинуть блок вниз
            {
                i = gameInfo.Level;
                //принудительно отправляем клавишу "Стрелка Вниз"
                if (!HandleKey(ConsoleKey.DownArrow))                //если не сдвинулся, то снизу уже мешают
                {
                    field.AppendBlock(blocksManager.CurrentBlock);   //поглотить блок

                    int deletedLines = field.DeleteFilledLines();    //удалить возможные заполненные линии
                    gameInfo.UpdateInfo(deletedLines);
                    blocksManager.CreateNewBlock();

                    if (blocksManager.CurrentBlock.IsHit(field))
                    {
                        gameInfo.IsGameOver = true;
                    }
                }
            }
        }