moveblockfour.lst

来自「用proteus模拟仿真实现俄罗期方块游戏」· LST 代码 · 共 251 行 · 第 1/2 页

LST
251
字号
C51 COMPILER V8.05a   MOVEBLOCKFOUR                                                        09/08/2007 12:41:38 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE MOVEBLOCKFOUR
OBJECT MODULE PLACED IN MoveBlockFour.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\MoveBlockFour.c BROWSE INCDIR(.\include) DEBUG OBJECTEXTEND PRINT(.
                    -\MoveBlockFour.lst) OBJECT(MoveBlockFour.obj)

line level    source

   1          //*************************************************************************************************
   2          //*                                                                                                                                                                                               *
   3          //*                      ********************************移动方块4********************************                        *
   4          //*                                                                                                                                                                                               *
   5          //*************************************************************************************************
   6          #include "GameGraph.h"
   7          #include "GameProcess.h"
   8          
   9          
  10          //*************************************************************************************************
  11          //*                                                                                                                                                                                               *
  12          //*                     *********************************状态1移动**********************************              *
  13          //*                                                                                                                                                                                               *
  14          //*************************************************************************************************
  15          void vMoveFourStateOne(unsigned char ucAction)
  16          {
  17   1              switch(ucAction)
  18   1                      {
  19   2                      case ACTIONROTATE:
  20   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  21   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine+2);
  22   2                                      vCleanBlock(uc_BlockRow-1,uc_BlockLine+2);
  23   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine);
  24   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine+1);
  25   2                                      vShowBlock(uc_BlockRow+1,uc_BlockLine+1);
  26   2                                      uc_BlockRow++;
  27   2                                      uc_BlockLine++;
  28   2                                      uc_BlockState=STATETWO;
  29   2                                      break;
  30   2                      case ACTIONRIGHT:
  31   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine+2);
  32   2                                      vCleanBlock(uc_BlockRow-1,uc_BlockLine+2);
  33   2                                      vShowBlock(uc_BlockRow,uc_BlockLine-1);
  34   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine+1);
  35   2                                      uc_BlockLine--;
  36   2                                      break;
  37   2                      case ACTIONDOWN:
  38   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  39   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine+1);
  40   2                                      if(uc_BlockRow)
  41   2                                              vCleanBlock(uc_BlockRow-1,uc_BlockLine+2);
  42   2                                      vShowBlock(uc_BlockRow+1,uc_BlockLine);
  43   2                                      vShowBlock(uc_BlockRow+1,uc_BlockLine+1);
  44   2                                      vShowBlock(uc_BlockRow+1,uc_BlockLine+2);
  45   2                                      uc_BlockRow++;
  46   2                                      break;
  47   2                      case ACTIONLEFT:
  48   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  49   2                                      vCleanBlock(uc_BlockRow-1,uc_BlockLine+2);
  50   2                                      vShowBlock(uc_BlockRow,uc_BlockLine+3);
  51   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine+3);
  52   2                                      uc_BlockLine++;
  53   2                                      break;
  54   2                      default:break;
C51 COMPILER V8.05a   MOVEBLOCKFOUR                                                        09/08/2007 12:41:38 PAGE 2   

  55   2                      }
  56   1      }
  57          
  58          //*************************************************************************************************
  59          //*                                                                                                                                                                                               *
  60          //*                     *********************************状态2移动**********************************              *
  61          //*                                                                                                                                                                                               *
  62          //*************************************************************************************************
  63          void vMoveFourStateTwo(unsigned char ucAction)
  64          {
  65   1              switch(ucAction)
  66   1                      {
  67   2                      case ACTIONROTATE:
  68   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  69   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine);
  70   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine-1);
  71   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine+1);
  72   2                                      vShowBlock(uc_BlockRow,uc_BlockLine-1);
  73   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine-1);
  74   2                                      uc_BlockLine--;
  75   2                                      uc_BlockState=STATETHREE;
  76   2                                      break;
  77   2                      case ACTIONRIGHT:
  78   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  79   2                                      vCleanBlock(uc_BlockRow-1,uc_BlockLine);
  80   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine);
  81   2                                      vShowBlock(uc_BlockRow,uc_BlockLine-1);
  82   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine-1);
  83   2                                      vShowBlock(uc_BlockRow-2,uc_BlockLine-2);
  84   2                                      uc_BlockLine--;
  85   2                                      break;
  86   2                      case ACTIONDOWN:
  87   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine);
  88   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine-1);
  89   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine-1);
  90   2                                      vShowBlock(uc_BlockRow+1,uc_BlockLine);
  91   2                                      uc_BlockRow++;
  92   2                                      break;
  93   2                      case ACTIONLEFT:
  94   2                                      vCleanBlock(uc_BlockRow,uc_BlockLine);
  95   2                                      vCleanBlock(uc_BlockRow-1,uc_BlockLine);
  96   2                                      vCleanBlock(uc_BlockRow-2,uc_BlockLine-1);
  97   2                                      vShowBlock(uc_BlockRow,uc_BlockLine+1);
  98   2                                      vShowBlock(uc_BlockRow-1,uc_BlockLine+1);
  99   2                                      vShowBlock(uc_BlockRow-2,uc_BlockLine+1);
 100   2                                      uc_BlockLine++;
 101   2                                      break;
 102   2                      default:break;
 103   2                      }
 104   1      }
 105          
 106          //*************************************************************************************************
 107          //*                                                                                                                                                                                               *
 108          //*                     *********************************状态3移动**********************************              *
 109          //*                                                                                                                                                                                               *
 110          //*************************************************************************************************
 111          void vMoveFourStateThree(unsigned char ucAction)
 112          {
 113   1              switch(ucAction)
 114   1                      {

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?