ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:198.45KB ,
资源ID:29781660      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29781660.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于VC++的推箱子游戏设计与实现.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于VC++的推箱子游戏设计与实现.docx

1、基于VC+的推箱子游戏设计与实现本科毕业设计(论文)基于VC+的推箱子游戏设计与实现学 院 自动化学院 专 业 电子信息科学与技术 年级班别 2008级(2)班 学 号 3108001166 学生 吕文财 指导教师 _ 学习 _ _ 2012年6月基 于 VC+ 的 推箱子游 戏 的 设计与实现 吕文财 自 动 化 学 院 摘 要近年来随着科技的飞速发展, Visual C+语言的应用正在不断深入。Visual C+语言是当今国际上非常流行的计算机高级编程语言之一,它是面向对象的可视化集成编程系统。它不但具有程序框架自动生成、灵活方便的类管理、代码编写和界面设计集成交互操作、可开发多种程序等优

2、点,而且通过简单的设置就可使其生成的程序框架支持数据库接口、OLE2,WinSock网络、3D控制界面。它更以自动编译功能和高级除错功能著称。因此,广泛受到编程人员青睐。不仅适合作为系统描述语言,也用来编写系统软件,还可以用来编写应用软件和设计游戏等。本论文着重分析用Microsoft Visual C+语言实现一个较为简单的推箱子游戏,旨在介绍推箱子游戏的实现方法,并逐步介绍Microsoft Visual C+6.0图形编程的方法和技巧。本设计通过主界面对话框类、关口选择对话框类、帮助对话框类三大类以及键盘操作模块、游戏规则模块、地图文件读取模块、背景音乐播放模块、地图绘制模块,共五大模块

3、构成。实现了任意关数选择、难度依次加大、游戏步数记录、背景音乐播放、游戏帮助、胜负判断等多个功能,采用图形函数的使用实现了一个完整的推箱子游戏界面,界面清晰可见。关键词:推箱子,c+语言, 模块,图形编程AbstractIn recent years, with the rapid development of science and technology, Visual C + + language application are continuously in depth. Visual C + + language is very popular on the current inter

4、national advanced programming languages of the computer, it is an object-oriented programming system integration of visualization. It not only has the program frame automatically generate, flexible convenient class management, coding and interface design integration, can develop a variety of interac

5、tive operation procedures and other advantages, and through the simple Settings will be able to make its generated programming framework support database interface, OLE2, WinSock network, 3 D control interface. It more for automatic compiler function and senior debugging is famous for its function.

6、Therefore, widely favored by programming staff. Not only for the system description language, which is also used to write the system software, can also be used to write application software and game design, etc.This paper focuses on analyzing with Microsoft Visual C + + language realize a relatively

7、 simple pushed box game, is to introduce the realization method of game pushed box, and gradually introduce Microsoft Visual C+ 6.0 graphics programming methods and techniques. This design through the main interface dialog box class, pass options dialog box class, help dialog box class three categor

8、ies and keyboard module, the rules of the game module, map reading modules, background music files play module, map module, a total of five module. Realize the random number, the difficulty in turn off choice, the more steps, background music record game play, the game won more than judgement to hel

9、p, the function, the use of graphics functions achieved a complete pushed box game interface, interface can be clearly seen.Key word: boxman, C+ language, modules, graphics programming1 绪论 11.1课题研究的意义 11.2国外研究动态 21.2.1推箱子游戏的研究动态 21.2.2国外研究现状及分析 32 课题研究相关技术与分析 62.1 Microsoft Visual C+6.0概述 62.2 可行性研究

10、与需求分析 73 推箱子游戏的总体设计 93.1推箱子游戏概述 93.2 推箱子游戏的基本要求 93.1.1 开发软件及硬件环境要求 93.1.2 运行环境 93.1.4 测试环境操作系统与硬件配置 93.1.4 界面要求 93.3 推箱子游戏具有的功能 103.3 推箱子游戏系统设计 113.3.1 推箱子游戏功能架构 113.3.2 程序结构设计 113.3.3 出错处理设计 123.3.4 维护设计 133.4游戏界面设计 133.4.1 游戏主界面的设计 133.4.2 游戏菜单结构的设计 133.4.3 游戏中关口选择对话框的设计 144 推箱子游戏的设计与实现 154.1推箱子游戏

11、的界面实现 154.1.1 游戏菜单的实现 154.1.2 游戏帮助对话框的实现 164.1.3 游戏关口选择对话框的实现 174.1.4 游戏播放背景音乐的实现 194.2推箱子游戏的核心算法设计与实现 194.2.1 地图文件读取模块的设计与实现 194.2.2 地图绘制模块的设计与实现 204.2.3 键盘操作模块的设计与实现 224.2.4 游戏规则模块的设计与实现 234.2.5 主对话框的设计与实现 245 推箱子游戏的整合测试 255.1 主菜单和界面显示功能的测试演示 255.2 键盘操作功能的测试演示 255.3 箱子放置到指定位置时变色显示功能的测试演示 265.4 支持地

12、图扩展功能的测试演示 275.5 游戏胜负判断功能的测试演示 285.6 游戏帮助功能的测试演示 29总 结 31参考文献 32致 331 绪论1.1课题研究的意义目前,在中国乃至世界,游戏产业已经逐渐成为微控制器领域的一个相当庞大以及重要的分支,而关于这方面的高级人才却仍甚是缺乏。尽管中国的程序员多如牛毛,但依然无法填补我们日常生活中的游戏需要,普遍质量也无法达标。迄今国游戏公司已经达200多家,市场上运营的游戏也达到300款之多,但与欧美、国等国家的游戏发展程度还有不小差距。我国有广阔的游戏市场,宽阔的发展空间,无限的继续挑战和剧增的玩家队伍。随着网络的兴起,巨大的市场需求量使中国在短短几

13、年,已经从无到有,从陌生到熟知,从掌握到运用。游戏必将成为网络竞争中的主角,它的商业利益和商业价值无法估量。中国,人口众多的国家,随着人们生活水平的提高,温饱早就不是最终目的,我们寻求的是更加多姿多彩的生活,那么我们怎么能错过游戏这一最佳休闲娱乐项目呢?所以我国游戏发展前景一片大好1!小游戏是一个较模糊的概念,它是相对于体积庞大的单机游戏及网络游戏而言的,泛指所有体积较小、玩法简单的游戏,通常这类游戏以休闲益智类为主,有单机版有网页版,在网页上嵌入的多为FLASH格式。当下小游戏主要是指在线玩的flash版本游戏,统称小游戏,其实小游戏还包含单机游戏,小型游戏机等。一般游戏大小小于10m的游戏

14、都统称为小游戏,一些街机类小游戏。如植物大战僵尸,捕鱼达人,合金弹头等归纳其中,因其游戏安装简便,耐玩性强,无依赖性而广受白领及小朋友的喜爱。小游戏的发展时间不长,而且也一直未收到广泛关注,当时中国大陆比较知名的小游戏,像4399,7k7k和2144,基本以收集大量的小游戏并摆列在上为卖点。到2012年,这些收集的小游戏多达2万到8万款。4399小游戏是这类的代表,号称为中国最大的Flash游戏集中,在2012年提供了8万余款Flash游戏,并将游戏分类为:动作、体育、益智、射击、搞笑、冒险、棋牌、策略、敏捷、综合、休闲、装扮、儿童和测试游戏2。由2007年底开始,网页游戏的市场日趋火爆,小游

15、戏作为网页游戏的一个重要组成部分也受到了广泛的关注。另外像Facebook,Myspace及国的校网、开心网等等一大批SNS社交的迅速崛起,集成小游戏几乎成为了这些SNS留住用户的不二法则。而体积较小,休闲和娱乐性很强的小游戏,尤其是Flash小游戏就成了SNS最热门的选择。目前小游戏行业发展面临巨大挑战。首先是小游戏多如牛毛,竞争非常激烈;其次,小游戏行业已经不像以前那样风光,利润率相对以前低了很多,不再属于暴利行业,而且小游戏的推广成本越来越高,用户对的要求也逐渐加大;最后是潜在的政策风险已经出现,例如网络文化运营许可证在小游戏的出现。经典的推箱子是一个来自日本的古老游戏,目的是在训练你的

16、逻辑思考能力。在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙的利用有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。推箱子游戏是非常经典的游戏,类似的游戏你也一定早就玩过。比如当今流行的切绳子、愤怒的小鸟等游戏,能在生活中给我们带来莫大的快乐,提升我们的大脑运算能力,开发我们的智慧。不仅在PC机上,在手机和很多PSP上都是十分常见而且流行。可以说,这种智力型游戏,给这个社会制造了许多快乐,对儿童、少年的成长起到非常重大的作用。记得几年前,推箱子在PC机上刮起了一股不小的益智类游戏的旋风,现在许多资深玩家也都对推箱子赞不

17、绝口,可见有深度的益智类游戏是非常受大家欢迎的。推箱子游戏1981年由日本人今林宏行首创,是在1982年12月由Thinking Rabbit 公司首次发行,名“仓库番”。箱子只可以推, 不可以拉, 而且一次只能推动一个,胜利条件就是把所有的箱子都推到目的地。推箱子游戏是一种老少皆宜的益智游戏,既可以开发青少年学生的智力,又可以防止老年痴呆症,全家一起攻关还可以促进家庭和睦。1.2国外研究动态1.2.1推箱子游戏的研究动态这款经典的手机游戏,现在电脑软件版,网页版,手机安卓、塞班版,3D版本都早就问世。最出名的当属唐图科技的宇宙推箱子。以推出高品质Symbian游戏闻名的唐图科技,这次是将经典

18、的推箱子游戏搬上了手机。在这款已经被多次翻新的经典益智游戏中,唐图科技的开发人员仍然没有让我们失望。独特的创意,精美的画面,丰富的效果,以及方便的操作,处处体现出唐图科技对于玩家的了解和独到的设计。这款基于X-Factory游戏引擎开发的推箱子游戏,首先将玩家熟悉的主角换成了一艘宇宙飞船,游戏的场景也相应地移到了浩瀚的宇宙空间中,而被推动的箱子则变成了不断闪烁的能量块。游戏场景层次非常丰富,令人眼前一亮,可以说是一个完全不一样的推箱子游戏。玩家操纵的飞船,在移动时会从尾部喷出动态的火焰,飞船的飞行动作平滑流畅,操作非常爽快。当能量块被推到正确的位置时,会不断地发出绿光,提示已经完成一部分。这些

19、丰富的效果,都依赖于X-Factory的强大功能和唐图科技开发人员的精彩创意。3D推箱子黄金版Magic Sokoban Gold 是一个古典的解谜益育游戏。五彩缤纷的图像和3D立体构图使箱子真实可见。游戏很容易操纵,用一只鼠标即可,游戏超过1000个水平。Flash小游戏 小狐狸推箱子松鼠推箱子吉豆推箱子机器人推箱子等一系列新版游戏,甚至可以利用道具,更是将这款最经典的推箱子发挥到极致。从1982年的“仓库番”到现在各种版本、各种平台的推箱子系列游戏,这款经典的智力型游戏长盛不衰,可见其在智力开发上给人类教育发挥了不小的推动作用。1.2.2国外研究现状及分析C+这个词在中国大陆的程序员圈子常

20、被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。 C+是一种使用非常广泛的电脑程式设计语言。它是一种静态资料类型检查的,支援多型的通用程式设计语言。C+支援程序化程式设计、资料抽象化、面向对象程式设计、泛型程式设计、基于原则设计等多种程式设计风格3。Stroustrup工作起于1979年的C with Classes。这个构思起源于 Stroustrup 做博士论文时的一些程式撰写经验。他发现Simula具备很利于大型软件开发的特点,但Simula的执行速度太慢,无法对现实需求发挥功效;BCPL虽快得多,但它过于低阶的特性,使其不适于大型软件的开发。当Strou

21、strup开始在贝尔实验室工作时,他有分析UNIX核心关于分散式计算的问题。回想起他的博士论文经验,Stroustrup开始为C语言增强一些类似Simula的特点。之所以选择C,是因为它适于各种用途、快速和可移植性。除了C和Simula之外,同时也从其它语言中取得灵感,如ALGOL 68、Ada、CLU以及ML。刚开始时,类别、衍生类别、储存类型检查、联和默认参数特性,都是透过Cfront引入C语言之中。1985年10月出现了第一个商业化发布。1983年,C with Classes改命名为C+。加入了新的特性,其中包括虚函数、函式名和运算符重载、参考、常数、使用者可控制的自由空间储存区控制、

22、改良的型别检查,以及新的双斜线(/)单行注解风格。1985年,发布第一版C+程式设计语言,提供一个重点的语言参考,至此还不是官方标准。1989年,发布了Release 2.0。引入了多重继承、抽象类别、静态成员函式、常数成员函式,以及成员保护。1990年,出版了The Annotated C+ Reference Manual。这本书后来成为标准化的基础。稍后还引入了模板、异常处理、命名空间、新的强制类型转换,以及布尔。随着C+语言的演变,也逐渐演化出相应的标准程式库。最先加进C+标准函式库的是串流I/O程式库,其用以取代传统的C函式,如printf和scanf。随后所引入的程式库中最重要的便

23、是标准模板库,简称STL4。多年后,一个联合的ANSI-ISO委员会于1998年对C+标准化(ISO/IEC 14882:1998)。在官方释出1998标准的若干年后,委员会处理缺陷报告,并于2003年发布一个C+标准的修正版本。2005年,一份名为Library Technical Report 1(简称TR1)的技术报告释出。虽然还不是官方标准的一部分,不过它所提供的几个扩展可望成为下一版C+标准的一部分。几乎所有目前仍在维护的C+编译器皆已支援TR1。随后,C+不断增加新特性。虚函数(virtual function)、操作符重载(operator overloading)、多重继承(m

24、ultiple inheritance)、模板(template)、异常处理(exception)、RTTI(Runtime type information)、命名空间(namespace)逐渐纳入标准。1998年国际标准组织(ISO)颁布了C+程式设计语言的国际标准ISO/IEC 14882-1998。 另外,就目前学习C+而言,可以认为它是一门独立的语言;它并不依赖C语言,我们可以完全不学C语言,而直接学习C+。所以有部分人认为在大多数场合中,C+完全可以取代C语言5。C+语言发展大概可以分为三个阶段:第一阶段从80年代到1995年。这一阶段C+语言基本上是传统类型上的面向对象语言,并且

25、凭借著接近C语言的效率,在工业界使用的开发语言中占据了相当大份额;第二阶段从1995年到2000年,这一阶段由于标准模板库(STL)和后来的Boost等程式库的出现,泛型程式设计在C+中占据了越来越多的比重性;第三阶段从2000年至今,由于以Loki、MPL等程式库为代表的产生式编程和模板元编程的出现,C+出现了发展历史上又一个新的高峰,这些新技术的出现以及和原有技术的融合,使C+已经成为当今主流程式设计语言中最复杂的一员。目前最新的C+标准是2011年9月发布的ISO/IEC 14882:20111,又称C+0x或C+11。现在的最新版C+编译器集合在Microsoft Visual Stu

26、dio 2010软件里面,包含C+,Visual basic,C#,J#,.net。等, 其中,VC开发环境的版本已经升级至Microsoft Visual C+2010,对C+的支持更加全面稳定,建议电脑性能好的可以使用此版本。目前微软公司已经停止对VC+6.0系列产品的维护,继而转向.NET平台环境,新的MS2008、MS2010等将更符合新世纪通用开发需求6。根据Effective C+第三版第一条款的描述,现在C+由以下四个“子语言”组成:1、C子语言。C+支持C语言的几乎全部功能,主要是c89的部分,在语法上与C语言仅有极微妙的差别(如括号表达式的左右值性,具体请参考C+标准文献)。

27、2、面向对象的C+语言。C+语言原本不具备面向对象的设计功能,然而随着面向对象编程的概念的提出以及如Java等语言的发展成熟,C+语言也开发出了支持面向对象功能的版本。3、泛型编程语言。C+强大(但容易失控的)模板功能使它能在编译期完成许多工作,从而大大提高运行期效率。4、STL(C+标准模板库,Standard Template Library)。随着STL的不断发展,它已经逐渐成为C+程序设计中不可或缺的部分,其效率可能比一般的native代码低些,但是其安全性与规性使它大受欢迎7。此外,包含在TR1等中的C+0x将实现的新功能在开发和测试中。在Windows版本系列中,下列特点是始终保持

28、并不断发展的;图形化的窗口界面。多任务方式的运行环境。虚拟化的设备接口。以虚拟存为核心的存管理。网络功能及应用程序,包括Miscrosoft网络、通用基础网络协议等。多媒体功能及应用程序,包括图形、声音、动画和开发工具等。功能丰富的用户管理工具和实用软件8。2 课题研究相关技术与分析2.1 Microsoft Visual C+6.0概述VC 作为一个主流的开发平台一直深受编程爱好者的喜爱, 但是很多人却对它的入门感到难于 上青天,究其原因主要是大家对他错误的认识造成的,严格的来说 VC+不是门语言,虽然它 和 C+之间有密切的关系,如果形象点比喻的话,可以 C+看作为一种“工业标准”,而 V

29、C+ 则是某种操作系统平台下的“厂商标准”,而“厂商标准”是在遵循“工业标准”的前提下扩展而来的。 VC+应用程序的开发主要有两种模式,一种是 WIN API 方式,另一种则是 MFC 方式,传统的 WIN API 开发方式比较繁琐,而 MFC 则是对 WIN API 再次封装,所以 MFC 相对于 WIN API 开 发更具备效率优势9。Visual C+ 6.0,简称VC或者VC6.0,是微软推出的一款C+编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其

30、新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了 Visual C+.NET(Visual C+7.0),但它的应用有很大的局限性,只适用于Windows 2000、Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台3。Visual C+6.0由Microsoft开发, 它不仅是一个C+ 编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以及程序

31、向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Microsoft的主力软件产品。Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台10。Visual C+6.0以拥有“语法高亮”,自动编译功能以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。其编译及创建预编译头文件(stdafx.h)、最小重建功能及累加连结(link)著称。这些特征明显缩短程序编辑、编译及连结的时间花费,在大型软件计划上尤其显著。由于C+是由C语言发展起来的,也支持C语言的编译。6.0版本是使用最多的版本,很经典。最大的缺点是对于模版的支持比较差。现在最新补丁为SP6,推荐安装,否则易出现编译时假死状态。仅支持Windows操作系统。目前发

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1