Ejemplo n.º 1
0
 public void AutoDown()
 {
     if (block.CanMoveDown(CANVAS, ROW, COLUMN))
     {
         t_fall.Enabled = false;
         pre_block      = block;
         PaintBlock(pre_block, false);             // 擦除上次一画的block
         block.MoveDown();
         PaintBlock(block, true);                  // 画新的
         t_fall.Enabled = true;
         if (t_fall.Interval == 1)
         {
             t_fall.Interval = INTERVAL;
         }
     }
     else
     {
         // 不能下移,说明到达最终位置,赋值1;检查能否消除行;新建block
         completed = true;
         PaintBlock(block, true);      // 赋值1
         completed = false;
         EraseLine();                  // 消除行
         block           = NewBlock(); // 新建block
         pre_block       = block;
         t_fall.Interval = 1;
     }
 }