- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c 课程设计俄罗斯方块.docx
四 川理工学院课 程 设 计 书学院计算机学院专业计算机科学与技术班级计科2014级题目俄罗斯方块教师何绍荣王非学生雷元刚张柯摘要近年来随着计算机在社会领域的不断发展,C++作为一门高级语言,能够实现面向对象编程。作为相较于C语言而言,C++设计无需复杂的程序设计环境,并且兼容C语言且比C语言更加安全和简洁。俄罗斯方块是大多数人儿时的游戏,它通过移动、旋转和摆放游戏自动输出的各种方块,使之排列成完整的一行或多行并且消除得分。本课程设计完成了俄罗斯方块的下落,旋转,加速,预览下一个方块。以及音乐的播放和帮助文档的创建,分数的读取和记录。通过编写本程序,让作者对消息循环和窗口的创建有了深入的理解,并且理解了俄罗斯方块的运行原理。同时掌握书写程序设计开发文档的能力。关键词:窗口句柄;回调函数;位图方块;俄罗斯方块;目录前言?俄罗斯方块游戏由莫斯科科学学院程序员Alexei Pajitnov设计,发行于1985年。他在玩过一个拼图游戏之后受到启发,从而制作了一个以Electronica 60为平台的俄罗斯方块的游戏。后来经瓦丁?格拉西莫夫移植到PC上,并且在莫斯科的电脑界传播。帕基特诺夫因此开始小有名气。随后几年,俄罗斯方块开始登陆各大游戏主机。也曾因为版权问题引起过许多纠纷。但是拜亚洲盗版商人所赐,俄罗斯方块被引进到国内,如今已成为家喻户晓的著名游戏了。如今电子游戏业如此繁荣,作为电子游戏鼻祖的俄罗斯方块起到了决定性的作用。如今俄罗斯方块已有多种版本,有的加了几种特殊形状,有的可以使用道具,还有连机的俄罗斯方块等等。但万变不离其宗,不管怎么变,游戏的基本规则是没有变化的。游戏玩法十分简单,如今已经成为一种公认的规则:屏幕顶部以随机顺序落下形状各异的方块,你要试图用它们拼成没有空隙的行列。坚持得时间越长,游戏速度也就变得越来越快,而游戏的吸引力就在于使你顶住碎块的进攻,支撑的时间比上一次更长。由于玩法简单,容易上手,如今仍是风靡全球,老少皆宜的一款游戏第一章 设计简介及设计方案论述1.1 需求分析随着社会的发展,越来越多的人开始接触电脑,也有越来越多的人开始喜欢上玩电脑游戏,而俄罗斯方块是一款经典的游戏,对于广大人群都有吸引力,游戏可以让人们得到放松,提高人们的工作效率。而好的人机交互界面,也能给人以美好的感官享受。1.2 系统功能及结构简介此俄罗斯方块程序能够实现显示现一个方块的形状,以及显示当前用户的得分和等级并写入到文件中,能够暂停,重玩,退出,帮助文件,切换音乐,关闭音乐。在游戏的过程中,如果想要暂停,可以点击菜单栏上的游戏里的暂停,或者点击空格键暂停。再次点击空格键游戏继续。如果要切换音乐,可以点击设置里的音乐选项,单击2中不同风格的音乐。1.2.2 系统结构利用的是MFC对话框程序的构成框架,然后再利用Windows提供的资源,运用控件,自己制作了对话框和人机交互界面。如图2.1所示。图2.1 程序结构图第二章 详细设计2.1界面设计2.1.1UI界面设计打开VC C++6.0新建一个工程,选择对话框。便生成了一个窗口。然后打开ResouceView,点开Dialog,插入Dialog,利用控件,绘制各个按钮。如图2.1所示。图2.1 俄罗斯方块首先设计游戏的UI界面,先创建工具栏(第二行)添加位图资源的ID,以及按钮的个数,大小,宽度,高度,工具栏风格。添加tbButtons数组,IDM_NEW新游戏,IDM_PAUSE暂停,IDM_STOP停止,IDM_MUSIC音乐,IDM_HELP帮助,并添加竖直的分割直线。。然后为控件添加响应函数发出单机消息。编写窗口消息循环和窗口回调函数,并且用Case用来捕获消息并处理。2.2 格模块功能设计2.2.1各按钮功能的实现(1)处理”暂停”按钮单击暂停按钮后,在message被捕获后传如回调函数后,判断是否是消息,再将其转化为int类型,并再使用case语句捕获然后调用GamePause函数来处理。如果游戏结束就直接返回,如果游戏上一个状态是开始,那么就显示游戏暂停,并调用SendMessage()显示游戏暂停,调用KillTimer()让方块停止下落,调用TetrisMusic()停止播放音乐。最后将状态设置为取反。如图2.2所示。图2.2 程序暂停图(2)处理”停止”按钮单击停止按钮后,窗口捕获后,调用回调函数匹配IDM_STOP,如果y==-1,还没有开始游戏,就直接返回。否则就调用GameOver(),输出游戏结束。如图2.3所示。(3)处理”开始”按钮单击开始按钮后,通过message捕获后,执行GameStart()函数,开始初始化游戏的数据,初始化Matrix矩阵,并将其初始化的颜色的值赋值为-1。初始化方块的位置为X=4,Y=-1。初始化标志变量,bStart
您可能关注的文档
- 新产品 新联盟 新方向——三星MITs SCH-i519产品发布暨行业和应用开发推介会策划案.doc
- QFII引入对我国上市公司融资能力影响的分析.doc
- 淮南八公山风景区的营销策划方案..doc
- 最新关于当前高校毕业生就业市场开拓存在的问题及对策研究-高等教育论文.doc
- 九江港物流成本控制探析.doc
- 民营企业应对国际贸易壁垒的思考——以温州民营出口企业为例.doc
- coco-cottage resort发展绿色酒店问题及对策的研究.docx
- 我国重要农产品价格调控政策评价及对策建议.doc
- 小学英语句式 小学英语句型句式.doc
- jz银行营销管理问题与对策研究-4.7.doc
- 南京某网络科技公司薪酬管理体系设计研究.doc
- 我省中小企业集群发展的现状、问题及对策研究范文.doc
- 提升顾客价值增强中小企业防范风险能力.doc
- 《耳听为虚——同音字和同音词》教案二.doc
- 论述我国环保产业融资所遭遇到的问题及建议.doc
- 第二章固體廢物預處理 - 環境污染控制工程.ppt
- 思维导图带你体验高效生活手把手教你如何画业务流程图.docx
- 2018 届江西省抚州五校高三5月联考文科综合试题及答案.doc
- DOC-绿色药膳养生主题餐厅创业计划书-营销战略及企业文化(DOC 49页)_图文.doc
- (WORD)-《吉乐淘高校和白领快乐购物平台营销推广策划案》(doc)-超市连锁.doc
文档评论(0)