坦克打靶游戏设计流程

坦克打靶游戏设计流程

ID:1441210

大小:43.00 KB

页数:4页

时间:2017-11-11

坦克打靶游戏设计流程_第1页
坦克打靶游戏设计流程_第2页
坦克打靶游戏设计流程_第3页
坦克打靶游戏设计流程_第4页
资源描述:

《坦克打靶游戏设计流程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、坦克打靶游戏设计流程前言呵呵,老师好,很久以前就希望自己能做一款小游戏,现在终于有了时间和能力去实现,可是由于该游戏涉及视频编程,所以无法在32位环境下运行(我主要用的是int10h中断),现在我将该游戏的编辑和运行软件放入我ftp作业文档(06382092张一杰)之中,有不便之处请老师谅解。其次由于时间仓促,该游戏还有许多不完善的地方,请老师指正。游戏设计思路如下:一、游戏界面设计该游戏的大体界面如下:该界面的参数是:1.视频模式:640x480像素,颜色位为16位,适配器为VGA2.边框规格:(每一个边都是由连续两行或两列组成,对它们大小将

2、分别以起始点和终止点来表示,点以(行,列)表示,线以[点,点]表示)上边框[(9,100),(9,540)],[(10,100),(10,540)],左边框[(9,100),(469,100)],[(9,101),(469,101)],右边框[(9,539),(469,540)],[(9,539),(469,539)],下边框[(469,100),(469,540)],[(470,100),(470,540)]3.靶之规格:(靶是长12个像素,宽6个像素的矩形,其表示方法为[左上顶点,右下顶点])靶之位置由靶之左上顶点所在的列决定(因为靶所在的

3、行固定,左上顶点所在的行是固定的为20)所以设左上顶点位置为(20,x)则靶为[(20,x)(26,x+12)],x之大小限制x<=527,x>=1011.坦克之规格:坦克由两部分组成:枪管和底座,枪管是长为4个像素,宽12个像素的矩形,底座是长12个像素,宽6个像素的矩形,他们的位置也是由枪管的左上顶点决定(枪管左上顶点的行数固定为451)设左上顶点为(451,x)则枪管为[(451,x),(463,x+4)],底座为[(463,x-4),(469,x+4)],x之大小限制x<=531,x>=1052.激光之规格:激光是一条白线,他位置由坦克

4、枪管左顶点决定,设左顶点为(20,x)则激光为[(26,x),(451,x)]二、游戏之分块设计根据游戏需要将游戏分成如下几块进行设计:1.基本的画图工具draw,它的参数分别是point1、point2、bh、al功能是画矩形,其中point1为矩形的左上顶点,point2为矩形的右下顶点,bh为页号,al为矩形颜色。通过它可以画直线、靶子和坦克2.靶子移动显示函数targetmov,参数是shoot功能是保持靶之自左向右移动,如果到了右边界再折回最左重新开始。shoot代表靶之左上顶点的列。3.坦克显示函数gunshow,参数是gun功能是

5、显示坦克,其中gun保存的是枪管左上顶点所在的列4.激光显示程序bullet,参数是gun功能是显示一条白色激光线5.延时函数delay,产生0.25秒的延时6.清理靶子函数cleartarget,参数shoot功能将当前位置的靶子清除(描黑)7.清理坦克函数cleargun,参数gun功能将当前位置的坦克清除8.清理激光函数clearbullet,参数gun功能将激光线清除9.描边函数side功能显示边框10.主控程序段,在main函数之中,用于对用户输入进行相应,综合调用各个函数三、游戏主控段的设计流程分析movax,@datamovds,

6、axmovah,00视频模式的选择:640X480moval,12hint10hL1:L1为整个游戏循环体的开头movcx,3L2:L2:扫描键盘响应用户输入,循环三次movah,01检测用户输入int16hjzr1该段功能是判断有无输入,没有跳出该次循环检测jmpr2采用这种形式是因为条件跳转指令所能跳转范围所限r1:jmpL7r2:movah,00如果有输入,读取输入,并将键盘缓冲区指针增一int16hcmpal,64h判断输入的是不是d,不是进行下次比较jneL3callcleargunaddgun,12如果是,则坦克参数右移cmpgun

7、,531比较坦克位置是否越界如果jbeL4如果越界则坦克位置保持不变subgun,12L4:callgunshowcalldelayjmpL7处理完毕跳出该次检测L3:cmpal,61h判断输入的是不是a,以下与对d的判断类似,在此不jneL5赘述callcleargunsubgun,12cmpgun,105jaeL6addgun,12L6:callgunshowcalldelayjmpL7L5:cmpal,73h判断是否有射击动作(s),如果没有则跳出该次检测jneL7callbullet激光显示calldelaycallbulletclea

8、rmovax,gun判断是否能够打中靶子,如果打中则清除靶子,并将subax,shoot靶子放入起始位置cmpax,0jbL7cmpax,12jaL7

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

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

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