俄罗斯方块(c源代码

俄罗斯方块(c源代码

ID:26150070

大小:59.50 KB

页数:17页

时间:2018-11-24

俄罗斯方块(c源代码_第1页
俄罗斯方块(c源代码_第2页
俄罗斯方块(c源代码_第3页
俄罗斯方块(c源代码_第4页
俄罗斯方块(c源代码_第5页
资源描述:

《俄罗斯方块(c源代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、俄罗斯方块(C源代码.txt珍惜生活——上帝还让你活着,就肯定有他的安排。雷锋做了好事不留名,但是每一件事情都记到日记里面。/**俄罗斯方块源程序*/#include#include#include#include/*图形函数库*//*定义按键码*/#defineVK_LEFT0x4b00#defineVK_RIGHT0x4d00#defineVK_DOWN0x5000#defineVK_UP0x4800#defineVK_ESC

2、0x011b#defineTIMER0x1c/*设置中断号*//*定义常量*/#defineMAX_BOX19/*总共有19种各形态的方块*/#defineBSIZE20/*方块的边长是20个象素*/#defineSys_x160/*显示方块界面的左上角x座标*/#defineSys_y25/*显示方块界面的左上角y座标*/#defineHorizontal_boxs10/*水平的方向以方块为单位的长度*/#defineVertical_boxs15/*垂直的方向以方块为单位的长度,也就说长是15个方块*

3、/#defineBegin_boxs_xHorizontal_boxs/2/*产生第一个方块时出现的起始位置*/#defineFgColor3/*前景颜色,如文字.2-green*/#defineBgColor0/*背景颜色.0-blac*/#defineLeftWin_xSys_x+Horizontal_boxs*BSIZE+46/*右边状态栏的x座标*/#definefalse0#definetrue1/*移动的方向*/#defineMoveLeft1#defineMoveRight2#defineM

4、oveDown3#defineMoveRoll4/*以后坐标的每个方块可以看作是像素点是BSIZE*BSIZE的正方形*//*定义全局变量*/intcurrent_box_numb;/*保存当前方块编号*/intCurbox_x=Sys_x+Begin_boxs_x*BSIZE,Curbox_y=Sys_y;/*x,y是保存方块的当前坐标的*/intflag_newbox=false;/*是否要产生新方块的标记0*/intspeed=0;/*下落速度*/intscore=0;/*总分*/intspeed_

5、step=30;/*每等级所需要分数*/voidinterrupt(*oldtimer)(void);/*指向原来时钟中断处理过程入口的中断处理函数指针*/structBOARD/*游戏底板结构,表示每个点所具有的属性*/{intvar;/*当前状态只有0和1,1表示此点已被占用*/intcolor;/*颜色,游戏底板的每个点可以拥有不同的颜色.增强美观*/}Table_board[Vertical_boxs][Horizontal_boxs];/*方块结构*/structSHAPE{charbox[2]

6、;/*一个字节等于8位,每4位来表示一个方块的一行如:box[0]="0x88",box[1]="0xc0"表示的是:1000100011000000*/intcolor;/*每个方块的颜色*/intnext;/*下个方块的编号*/};/*初始化方块内容.即定义MAX_BOX个SHAPE类型的结构数组,并初始化*/structSHAPEshapes[MAX_BOX]={/**口口口口口口口*口口口口口口*口口口*/{0x88,0xc0,CYAN,1},{0xe8,0x0,CYAN,2},{0xc4,0x4

7、0,CYAN,3},{0x2e,0x0,CYAN,0},/**口口口口口口*口口口口*口口口口口口*/{0x44,0xc0,MAGENTA,5},{0x8e,0x0,MAGENTA,6},{0xc8,0x80,MAGENTA,7},{0xe2,0x0,MAGENTA,4},/**口*口口口口*口口口*/{0x8c,0x40,YELLOW,9},{0x6c,0x0,YELLOW,8},/**口口口*口口口口*口*/{0x4c,0x80,BROWN,11},{0xc6,0x0,BROWN,10},/**口口口

8、*口口口口口口口口口口*口口口*/{0x4e,0x0,WHITE,13},{0x8c,0x80,WHITE,14},{0xe4,0x0,WHITE,15},{0x4c,0x40,WHITE,12},/*口*口*口口口口口*口*/{0x88,0x88,RED,17},{0xf0,0x0,RED,16},/**口口*口口*/{0xcc,0x0,BLUE,18}};unsignedintTimerCounter=0;/*定时计数器变

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。