课程设计俄罗斯方块

课程设计俄罗斯方块

ID:20920310

大小:161.00 KB

页数:20页

时间:2018-10-17

课程设计俄罗斯方块_第1页
课程设计俄罗斯方块_第2页
课程设计俄罗斯方块_第3页
课程设计俄罗斯方块_第4页
课程设计俄罗斯方块_第5页
资源描述:

《课程设计俄罗斯方块》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程设计报告课程名称:面向对象程序设计C++设计题目:俄罗斯方块专业:计算机科学与技术姓名:学号:指导教师:李晓虹2016年1月10日课程设计报告模块内容:(1)系统需求分析利用C++实现方块方块控制、显示更新、游戏记分、游戏等级以及方块控制,直接由玩家通过键盘控制,游戏区域的方块部件根据玩家具体键盘的操作左右移动、旋转、加速下落。(2)总体设计屏幕中央有一个矩形“容器”,选择“开始”菜单或“开始”工具按钮后,俄罗斯方块的部件随机产生并在容器中自由下落。(3)详细设计1.游戏过程中,当在矩形“容器”中,出现一个游戏方块时,必须在游戏方块的预览区域中出现下一方块,这样利于游戏

2、玩家控制游戏的策略。2.有七种标准俄罗斯方块部件,通过各种判断,实现游戏方块并随着键盘上的上键顺时针旋转90度,随着下键加速下落,随着左、右各键分别左、右移动。3.当部件下落达“容器”底部或已停止的部件时,停止下落;当同一行部件完整拼接上时,该行消失,其他行向下移动,在适当位置显示当前累计分数。4.当部件总行数超过矩形容器的高度或没有足够的空间产生新的部件时,提示“游戏结束”信息并停止游戏运行。5.游戏计分原则:一次消去一行加个五角星,方块下落的速度会越来越快。(4)系统调试#include#include#include

3、h>#include#includeconstintback=30;//const,限定变量不允许被改变,back表示背景颜色constintspeed[]={0,12,9,6,3,1};constintnumber[]={0,2,3,5,7,11,15};constintcol[]={11,15,12,12,13,13,14};intrank=1;intlevel=0;//0表示既不是向右也不是向左,1表示向左,2表示向右intkind;intpri_kind;//7大类,颜色标记,调用col[col_kind];intrevolve

4、=0;//旋转状态标记struct{intx;inty;}current,before;struct//定义一个结构体内容包括坐标,颜色,是否显示方块{intx;inty;intcolor;boolhaving;//布尔型变量作逻辑判断运算结果为真或为假,有方块为真,没有方块为假}board[15][25];struct{intvary_x[4];intvary_y[4];}vary[]={{{0,2,4,6},{0,0,0,0}},{{0,0,0,0},{0,-1,-2,-3}},{{0,2,2,0},{0,0,-1,-1}},{{0,-2,-2,-4},{0,0,-1,

5、-1}},{{0,0,2,2},{0,-1,-1,-2}},{{0,2,2,4},{0,0,-1,-1}},{{0,0,-2,-2},{0,-1,-1,-2}},{{0,0,2,4},{0,-1,0,0}},{{0,0,0,2},{0,-1,-2,-2}},{{0,0,-2,-4},{0,-1,-1,-1}},{{0,2,2,2},{0,0,-1,-2}},{{0,2,4,4},{0,0,0,-1}},{{0,-2,-2,-2},{0,0,-1,-2}},{{0,0,2,4},{0,-1,-1,-1}},{{0,0,0,-2},{0,-1,-2,-2}},{{0,2,4,2

6、},{0,0,0,-1}},{{0,-2,0,2},{0,-1,-1,-1}},{{0,0,-2,0},{0,-1,-1,-2}},};struct{intsum;intconnection_x[5];intconnection_y[5];}connection[]={{2,{-2,2},{0,1}},{1,{0},{0}},{2,{2,-2},{0,0}},{2,{-2,2},{0,0}},{4,{-2,0,4,-2},{0,0,-1,1}},{4,{-4,2,-2,4},{0,0,-1,1}},{4,{-2,2,0,0},{0,0,0,0}},};voidgotoxy(

7、intx,inty)//光标移动函数{COORDpos;//COORD是WindowsAPI中定义的一种结构,表示一个字符在控制台屏幕上的坐标pos.X=x;pos.Y=y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);//使光标到(x,y)这个位置}voidcolor(intb)//颜色函数{HANDLEhConsole=GetStdHandle((STD_OUTPUT_HANDLE));SetConsoleTextAttribute(

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

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

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