俄罗斯方块说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计(C++)》课程设计说明书
专业班级:10软件
学号:04011001053
学生:王勇
指导教师:
本次游戏设计确定为俄罗斯方块游戏的开发。以对话框为基础进行游戏主界面的设计。主要是想通过此次游戏的开发,加深对对话框游戏编写的了解,对游戏界面的控制,以及键盘对程序控制的练习。
需求分析
俄罗斯方块是一款非常简单的小游戏,对于练习游戏开发是很好的选择之一。现在的俄罗斯方块可以用多种编程语言,多种编程工具来实现,这里选择用C++在VC++6.0的环境下进行开发。主要是因为C++语言中的面向对象思想非常适合开发此类游戏,并且MFC提供了很好的面向对象环境。
界面设计
本游戏是基于对话框的程序开发,开始的时候删除新建对话框中已有的控件。游戏的控制按钮包括开始新游戏、暂停、停止游戏、难度设置、操作说明、关于作者7个按钮,采用Button控件,并为每个按钮创建相应的响应函数,其基类定为主对话框类即CElsfkDlg,打开游戏的时候每个按钮都是可以按下的。按下难度设置、操作说明、关于作者按钮后,会有相应的对话框弹出,如按下难度设置按钮后会弹出对话框。
游戏概述
本游戏是基于MFC的程序开发,和传统的俄罗斯方块基本一样,共有七种方块可以下落,每种方块有四个旋转方向,所有方块的颜色随机。通过方向键可以对正在下落的方块进行相应的操作。当方块满行时,此行消除,得到分数。当有方块出现在顶行时,游戏结束。
操作说明
1.开始新游戏之前可以点击“难度设置”按钮,选择游戏难度,难度范围为1到7。如果不选择游戏难度,那么难度默认为1。
2.点击“开始新游戏”按钮,开始游戏,此时“难度设置”按钮,被禁用,变为灰色。开始游戏后,大地图上出现下落的方块,预览界面里出现下一个将要下落的方块形状与颜色。分数框显示为0,等级框显示为级别1。
通过键盘上的左右方向键可控制正在下落的方块分别向左、向右移动。按下方向键上后,正在下落的方块可以改变旋转方向,按下方向键下,可加速下落的方块向下移动。当方块在大地图中达到满行后,该行消失,这行以上的所有方块向下移动一行。分数与等级会有相应的增加。一次消失1行,分数增加100,连续消失2行,得分为320,连续消失3行得分为550,连续消失4行,得分为810。分数不为0时,初始等级为游戏前所选等级,如果没有选择,则默认为1。
3.游戏开始后点击“暂停”按钮,该按钮上显示“继续”,游戏暂停,方块不再下落。再次点击此按钮,“继续”变成“暂停”,方块继续向下下落。
4.游戏开始后点击“停止游戏”按钮,游戏画面静止。同时“暂停”和“停止”按钮被禁用,变成灰色。点击开始新游戏按钮,可重新开始游戏。
5.点击“退出游戏”按钮,游戏关闭。
6.当方块到达大地图区的顶行时,游戏结束,最后一个下落方块颜色的单色方块将大地图从下向上覆盖。
总结
此游戏之所以采用基于对话框的开发而不是基于文档的开发,只要想尝试不同的开发方法。在编写程序的过程中遇到的很多的问题,通过不断地上网查询,查资料书而得以解决,
虽然最后生成的程序含有很多不让人满意的地方,但此次的课程设计给了我很大的启迪,让我知道怎么用MFC开发一个完整的程序,并且对C++中所讲解的面向对象思想有了新的认识。多读别人完整的源码,完善自己的开发思想、养成良好的编程和懂得编程与书写文档同时进行是必须的。读他人的源码,可以学习别人的编程思想,以及一些小技巧,在编程的同时,进行文档的书写,可以记录自己编写程序的过程,对于程序的改进以及书写最后的文档有很大的作用。
总的来说,这一次开发Windows和之前的程序开发有很大的不同,这一次对面向对象思想有了更多的认识,而且开始接触的控件让我对于软件开发有了更大的兴趣。