?? movedecidefour.lst
字號:
C51 COMPILER V8.05a MOVEDECIDEFOUR 09/08/2007 12:41:33 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE MOVEDECIDEFOUR
OBJECT MODULE PLACED IN MoveDecideFour.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\MoveDecideFour.c BROWSE INCDIR(.\include) DEBUG OBJECTEXTEND PRINT(
-.\MoveDecideFour.lst) OBJECT(MoveDecideFour.obj)
line level source
1 //*************************************************************************************************
2 //* *
3 //* ******************************判斷方塊4是否可以移動************************** *
4 //* *
5 //*************************************************************************************************
6 #include "GameGraph.h"
7 #include "GameProcess.h"
8
9
10
11 //*************************************************************************************************
12 //* *
13 //* *********************************狀態1判斷********************************** *
14 //* *
15 //*************************************************************************************************
16 unsigned char ucDecideFourStateOne(unsigned char ucAction)
17 {
18 1 switch(ucAction)
19 1 {
20 2 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<是否可以旋轉>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
21 2 case ACTIONROTATE:
22 2 if(uc_BlockRow==0)
23 2 return 0;
24 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine)==0)
25 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine+1)==0)
26 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine)==0)
27 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine+1)==0)
28 2 return 1;
29 2 break;
30 2 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<是否可以向右移動>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
31 2 case ACTIONRIGHT:
32 2 if(uc_BlockRow==0||uc_BlockLine==0)
33 2 return 0;
34 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine+1)==0)
35 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine-1)==0)
36 2 return 1;
37 2 break;
38 2 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<是否可以向下移動>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
39 2 case ACTIONDOWN:
40 2 if(uc_BlockRow==20)
41 2 return 0;
42 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine)==0)
43 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine+1)==0)
44 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine+2)==0)
45 2 return 1;
46 2 break;
47 2 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<是否可以向左移動>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
48 2 case ACTIONLEFT:
49 2 if(uc_BlockRow==0||uc_BlockLine==9)
50 2 return 0;
51 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine+3)==0)
52 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine+3)==0)
53 2 return 1;
54 2 break;
C51 COMPILER V8.05a MOVEDECIDEFOUR 09/08/2007 12:41:33 PAGE 2
55 2
56 2 default:break;
57 2 }
58 1 return 0;
59 1 }
60
61
62 //*************************************************************************************************
63 //* *
64 //* *********************************狀態2判斷********************************** *
65 //* *
66 //*************************************************************************************************
67 unsigned char ucDecideFourStateTwo(unsigned char ucAction)
68 {
69 1 switch(ucAction)
70 1 {
71 2 case ACTIONROTATE:
72 2 if(uc_BlockRow<2||uc_BlockLine==11)
73 2 return 0;
74 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine+1)==0)
75 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine+1)==0)
76 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine-1)==0)
77 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine-1)==0)
78 2 return 1;
79 2 break;
80 2 case ACTIONRIGHT:
81 2 if(uc_BlockLine==1)
82 2 return 0;
83 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine-1)==0)
84 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine-1)==0)
85 2 if(ucReadBlock(uc_BlockRow-2,uc_BlockLine-2)==0)
86 2 return 1;
87 2 break;
88 2 case ACTIONDOWN:
89 2 if(uc_BlockRow==20)
90 2 return 0;
91 2 if(ucReadBlock(uc_BlockRow+1,uc_BlockLine)==0)
92 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine-1)==0)
93 2 return 1;
94 2 break;
95 2 case ACTIONLEFT:
96 2 if(uc_BlockLine==11)
97 2 return 0;
98 2 if(ucReadBlock(uc_BlockRow,uc_BlockLine+1)==0)
99 2 if(ucReadBlock(uc_BlockRow-1,uc_BlockLine+1)==0)
100 2 if(ucReadBlock(uc_BlockRow-2,uc_BlockLine+1)==0)
101 2 return 1;
102 2 break;
103 2 default:break;
104 2 }
105 1 return 0;
106 1 }
107
108
109 //*************************************************************************************************
110 //* *
111 //* *********************************狀態3判斷********************************** *
112 //* *
113 //*************************************************************************************************
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -