- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计实践设计报告
课题名称: 双人俄罗斯方块游戏程序
学生姓名: 陈宸
班 级: 2 0 1 3 2 1 1 1 1 3
班内序号: 12
学 号: 2 0 1 3 21 0 3 75 日 期: 2015.6.13
课题概述
1.1课题目标和主要内容
本实验是在win32控制台下设计并实现双人俄罗斯方块对战的游戏。从文本界面开发的基础知识着手,从一般控制步骤、控制台窗口操作、文本(字符)控制、滚动和移动光标、键盘和鼠标等几个方面讨论控制台窗口届满的编程控制方法;然后讨论文字闪烁、移动等技巧;最后,将上述技术和方法进行封装和设计,再结合双线程相关知识最终完成双人俄罗斯方块游戏的实现。
本实验使用的开发平台为visual studio2012集成开发环境,工程类型为Win32 Console Application,采用的主要工具为C++编程语言。
1.2系统的主要功能
功能框图:
开始
玩家选择游戏难易程度
按任意键开始游戏同时开始计时,并播放音乐
随机产生7个或9个不同形状的方块
填满一排就消除,并加分;同时给对方增加一排方块
可以暂停游戏,10秒后自动恢复游戏
时间结束或者一方不能没有放下方块的位置
否
是
判定输赢
结束游戏
功能列表及说明:
功能名称功能说明双人在同一界面下对战能在一个窗口下显示两张“map”,双方玩家可以同时进行游戏,看到自己及对方的游戏状况 玩家选择游戏难度通过获取按键“1”或“2”来确定随机产生的方块形状个数简单的为7中形状复杂的为9中形状播放背景音乐游戏开始时音乐自动播放
方块消除,分数更改,对方方块的增加不论在最后一排还是在中间部分,只要方块填满一排就可以消除;并分数增加;同时对方的最后一排会自动生成一排含有一个空缺的方块(空缺的位置随机)
游戏暂停与恢复按空格键游戏暂停10秒左右,可以多次按空格键进行更长时间的暂停
游戏计时与输赢评判游戏开始时自动开始计时,到规定时间则游戏结束,通过双方的分数来进行“win”和“lose”的评判;若在游戏时间内有一方先用完所有空间则另一方胜利系统设计
2.1 系统总体框架
通过获取不同键盘按键分别控制两个游戏界面
= 1 \* GB3 \* MERGEFORMAT ①设计思路:
两个游戏界面之间的交互以及分数记录
生成两个游戏界面
设置时间控制
添加背景音乐播放
游戏结束判定以及输赢判定
再次开始
= 2 \* GB3 \* MERGEFORMAT ②系统总体框架:
双方成绩记录
两个同时进行游戏的界面
单人俄罗斯方块游戏
实现双人对战游戏
双方游戏的交互
2.2系统详细设计
= 1 \* GB3 \* MERGEFORMAT ①模块划分图及描述
Gameover和win函数
初始化函数
游戏进行main函数
窗口过程函数
主要模块:初始化--基本显示函数--方块的显示和擦除--方块旋转
--方块是否能下移--满一行后消行--游戏结束
即遵循了MVC设计模式:
设计Moldel。及工作区和方块的存储结构用来方便的存取数据;
设计View。即如何根据数据显示不同的界面;
设计COntroller。即如何用键盘控制数据的变化。
= 2 \* GB3 \* MERGEFORMAT ②类关系图及描述
没有定义类结构,直接是各个功能函数在主函数中根据获取到的不同按键以及游戏的具体情况而被调用。所以这里代替类关系及描述介绍所用到的各功能函数:
Turn--方块转动函数;
IsAvailable--判断能否移动函数;
DrawBlocks--画方块函数;
= 3 \* GB3 \* MERGEFORMAT ③程序流程图及描述
(1):双人对战的总体流程:
显示两张map提供两个游戏界面,调用初始化函数
从键盘上获取任意按键进入游戏,进入main函数
从键盘上指定按键调用相应的窗口过程函数
检测双方游戏情况,调用相应的窗口过程函数
结束游戏调用gameover和win函数
单个游戏的具体运行流程:
开始
初始化
创建方块
创建下一个方块
显示当前分数和级别
键盘处理
是否可以下移
您可能关注的文档
- ISO9001:2008质量管理体系标准理解探究.ppt
- 安全评价汇报(启航ICB修改)最新的探究.ppt
- ISO9001:2015与ISO9001:2008比较探究.ppt
- 安全气囊1.探究.ppt
- 冲模的设计教材.ppt
- 第1章微计算机系统教材.ppt
- 对口单招汽车专业教材.doc
- 对水泥混凝土外加剂的全面评估教材.docx
- ISO9001:2015转版及标准2探究.ppt
- 对通讯规约的讨论教材.doc
- 2024年吕梁市公务员考试行测试卷历年真题及1套参考答案详解.docx
- 2024年吴忠市公务员考试行测真题及完整答案详解1套.docx
- 2024年吕梁市公务员考试行测真题精选答案详解.docx
- 2024年吕梁市公务员考试行测试卷历年真题及完整答案详解一套.docx
- 2024年吕梁市公务员考试行测真题及参考答案详解1套.docx
- 2024年吕梁市公务员考试行测真题及参考答案详解一套.docx
- 2024年咸宁市公务员考试行测真题及答案详解一套.docx
- 医疗机构服务流程再造与优化策略.pptx
- 2024年和田地区公务员考试行测真题及答案详解(必刷).docx
- 2024年呼和浩特市公务员考试行测真题及答案详解(必刷).docx
文档评论(0)