中原工学院信息商务学院毕业设计(论文)
第3章 坦克大战总体设计
3.1 总体设计
3.1.1 运行环境
硬件:内存512M以上,硬盘80G。 软件: windows XP/2000。 3.1.2 基本设计和处理流程
坦克大战游戏需要实现坦克的游戏过程,快门存取,声音控制,游戏速度设置,坦克速度设置,键盘设置等功能。 3.1.3 结构
坦克游戏程序总体框架如图3-1所示
坦克游戏游戏过程键盘设置坦克速度设置游戏声音设置游戏速度设置存储游戏游戏启动画面游戏开始暂停游戏障碍物过关或者结束敌人坦克移动坦克控制坦克发子弹坦克爆炸打分其他显示游戏保存游戏恢复
图3-1 总体框架
21
康小武:游戏(坦克大战)软件的开发
3.1.4 功能总述
游戏开始:进入游戏后,需要在右方点击一个图形按钮,方能开始游戏。 坦克控制:接下来你可以按键盘的上、下、左、右键来控制自己的坦克上、下、左、右移动。(当然你也可以点击键盘设置,来设置自己喜欢的键位)
坦克发子弹:按空格键可以发射子弹。(当然你也可以点击键盘设置,来设置自己喜欢的键位)
坦克爆炸:自己的子弹打到了敌方坦克会爆炸,敌方坦克子弹打中自己坦克也会爆炸。
坦克移动规则:如果到了边缘,碰到障碍,碰到对方的坦克,都不能继续往前移动,你可以改变方向来移动自己的坦克。
游戏障碍物:当你移动到障碍物时,坦克便不能够再继续往前行,有的可以打烂,有的不能。
敌人坦克:敌人会随机的上、下、左、右移动,以及发射子弹,敌人坦克移动也遵循坦克移动规则。
游戏声音:坦克的每次移动,发射子弹,坦克爆炸都会有相应的声音,声音让游戏变得更有乐趣。
游戏暂停与继续:当你有事的时候,需要暂停游戏,点击右边的暂停按钮,游戏便暂停了,再点击游戏继续。
生命数的显示:在右上方,你可以看到敌人还有多少坦克生命,自己还有多少生命数。
游戏打分:每打死一个敌人坦克,都会给一定的游戏分值。 声音控制:点击右方的声音控制按钮来实现游戏声音的开关。
游戏存取:当你有事或者遇到什么情况不能继续玩游戏你可以点击菜单项目的游戏进度里的保存保存当时的游戏状况,当你回来的时候可以点击恢复游戏继续玩。
游戏速度设置:点击游戏速度,来实现游戏速度的设定。 键盘设置:点击键盘设置,来设置你喜欢的控制键位。
下一关:当把全部敌人都消灭则进入下一关,或者直接点击右下方的下一关图形按钮。
游戏结束:当自己的生命数为0,或者强行关闭。
22
中原工学院信息商务学院毕业设计(论文)
3.2 接口设计
这个游戏没用到外部接口,但是一些内部接口还是要作下介绍。该程序分为游戏过程,和游戏辅助两个大的功能模块,其中辅助模块与游戏过程的接口有: 3.2.1 游戏存取问题
存取主要的接口就是把己方坦克拥有的属性,如坐标位置,方向,显示情况,等属性,存游戏的时候把这些属性保存起来,游戏恢复的时候把这些属性重新赋值给游戏过程。 3.2.2 声音控制问题
通过一个BOOL变量来控制游戏的声音,如果为真,让游戏播放声音,如果为假不让游戏播放声音。 3.2.3 键盘设置问题
主要是把控制坦克的四个方向键和子弹键,游戏暂停键设置下。 3.2.4 坦克速度设置问题
坦克一次移动多少用一个int变量表示,修改这个变量即可 3.2.5 总体游戏速度设置问题
通过修改计时器的时间参数,可以让游戏整体变快或者变慢。
3.3 界面设计
3.3.1 游戏界面
界面设计要求如图3-2所示。
23
康小武:游戏(坦克大战)软件的开发
图3-2 主要界面
24
中原工学院信息商务学院毕业设计(论文)
第4章 详细设计
4.1 程序系统结构
系统采用Visual C++6.0的标准EXE工程来进行开发,实现标准包括: 4.1.1 主程序
工程类型:MFC AppWizard(EXE)基于单文档程序 工程名称:Tank
编译生成文件:Tank.EXE
引用的组件:winmm.lib,Msimg32.lib 4.1.2 用户自定义控件
图形按钮:点击按钮可以开始游戏、暂停游戏。 4.1.3 系统的总体流程图
系统的总体流程图如图4-1所示
25