基于java的推箱子游戏含源文件_第1页
基于java的推箱子游戏含源文件_第2页
基于java的推箱子游戏含源文件_第3页
基于java的推箱子游戏含源文件_第4页
基于java的推箱子游戏含源文件_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计I基于 JAVA 的推箱子游戏前言在这个充满竞争的社会里,随着生活节奏的不断加快,人们的生活水平越来越繁忙,因此,越来越多人感到无比的烦躁与巨大的压力,这些压力也带给人们诸多烦恼。所以如何解除现代人的生活压力,释放心中苦闷已经成为现代人的共同心愿。而本次的这个基于 JAVA 的推箱子小游戏正是使用 JAVA 语言并且结合于 EditPlus 编译器,为大家开发了一款适合的、休闲娱乐的游戏,在娱乐的同时也给忙碌的上班族们开拓了另一个思考问题的空间。基于 JAVA 的推箱子小游戏主要分为初始化模块,画图模块,移动小人模块,移动箱子模块以及功能控制模块。玩家是通过控制小人的移动来推动箱子,需要避过障碍物与死角才能将其推放到指定位置从而达到过关的目的。每关的难易程度各异,不仅适合人们休闲娱乐,还有助于开发智力,提高人们思考问题能力与想象能力,改善思考方式,拓展思维。关键词:JAVA;解压;推箱子;休闲娱乐四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计IIAbstractIn this competitive society, along with the accelerating pace of life, peoples living standard more and busier, therefore, more and more people feel very upset and enormous pressure, the pressure also gives people a lot of trouble. So how to relieve the pressure of modern life, release the pain has become the common aspiration of the people. But this time based on the JAVA Push Box Game is the use of JAVA language and the combination of EditPlus compiler; we developed a suitable, recreational game, in the entertainment but also for busy office workers to develop another thinking space.Based on the JAVA Push Box Game consists of initialization module, drawing module, mobile SIM module, mobile box module and control module. Game player is controlled through a small mobile drive box, need to avoid obstacles and dead angle can be pushed into the specified location so as to achieve the purpose of clearance. Each level of difficulty degree is different, not only for recreation, also contribute to the development of intelligence, improve peoples thinking ability and imagination ability, improve the way of thinking, the development of thinking.Key Words:JAVA; Relieve pressure; Push box; Recreation and entertainment四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计III目 录前言 .IAbstract .II1 可行性研究.21.1 设计目的.21.2 可行性研究前提.21.3 可行性分析.21.4 结论意见.32需求分析.32.1 引言.32.2 游戏需求.32.3 软硬件需求.4硬件环境需求:.4软件环境:.42.4 接口控制.42.5 方案论证.42.5.1.C+语言的优点.42.5.2.Java 语言的优点.52.5.3.方案选择.63概要设计.73.1 游戏设计分析.73.3.1.地图文件的引用.73.3.2.程序运逻辑.73.3.3.绘图.73.3.4.显示平台.73.2 注意事项.83.3 游戏流程图.84.详细设计.94.1 游戏总体结构与代码.9结 论.21参 考 文 献.22四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计IV致 谢.23四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计1引 言在人类的社会生活当中,游戏占有很大的比重,并且随着社会的发展而不断发展。而且游戏本身具有激发人类潜在行为的特质,是一种能够吸引人们参与其中的活动,其本身具有强烈的吸引力使游戏者卷入其中;再者适当的游戏、合理的时间安排,能够让玩家在娱乐的同时还可以锻炼其反应速度及灵敏程度,学习到一些在学校里、课堂上学不到的知识与技能,亦可让玩家从压力中释放出来。因此游戏逐渐成为人们生活中不可缺少的一部分,游戏产业也正逐步发展成熟。经典的推箱子游戏是一个来自日本的古老游戏,目的是在训练你的逻辑思考能力。在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙的利用有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。而且在如今科学技术不断发展的时代,推箱子小游戏的样式也趋于完美步调,当然这个世界上并没有绝对完美的东西,但就相对推箱子小游戏而言,如此巨大的发展也令人感叹。精美的画面,丰富的效果,以及方便的操作体现了推箱子小游戏的不断创新。四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计21可行性研究1.1 设计目的综合运用在校期间所学到的理论知识和技能,并且结合课外参考资料,设计开发基于 JAVA 的推箱子小游戏,让自己能够熟悉并熟练应用系统的开发过程,培养独立思考能力,检验学习成果和实际动手能力,以及提高工程实践能力,为今后的工作打下坚实的基础。1.2 可行性研究前提基本需求:系统开发的总体任务是实现游戏的可操作性、美观性、及时性。开发过程遵循软件工程规范,可采用结构化或面向对象分析设计方法。主要实现 windows 的GUI 程序开发,对游戏中的图形图像进行键盘控制。玩家可以通过控制上下左右键来对游戏进行操作。主要开发目标:采用结构化设计方法,开发出一个操作简单、界面简洁美观、适合休闲娱乐的小游戏,实现 Windows 的 GUI 程序开发,并通过此次软件开发过程全面提高自身的综合素质。条件假定和限制:由于对编程语言的学习以及理解还不是很到位,因此本小游戏可能会存在某些问题以及不足之处。如果该软件要提高版本,本软件则需要根据玩家的要求进行进一步的修改。可行性研究所采用的方法和步骤:通过研究分析推箱子小游戏所需要的功能以及实现的方法、确定主体结构。利用所学到的知识,以最简洁、最容易的办法,边开发边测试边修改,实现一个初级游戏软件。评价尺度:由于本软件是一个初级产品,对其要求不是太苛刻,所以能够达到推箱子小游戏的一般功能即可。1.3 可行性分析管理可行性: 该游戏软件的目的是为了提高自身素质以及检查所学习 JAVA 的效果,运用 JAVA 语言编写后在 EditPlus 编译器中运行简单明了,所有功能均根据基本需求所做,便于管理,所以在这方面是可以实现的。经济可行性:由于本游戏的主要背景是毕业课程设计,不注重直接的经济效益和其后的发展方向,关键注重于自身编写程序的水平以及其能力的提高,对自身的经济要四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计3求也不高,只要有一台能运行 JAVA 软件和 EditPlus 编译器的电脑即可,所以可以不用考虑经济方面的相关问题。技术可行性:对于本游戏,可以使用如 VB,Java,Delphi 等相关的编程语言,但是考虑到编写程序的难易程度以及对编译语言的了解程度,本游戏选择 JAVA 程序语言作为编程语言。需要对变量定义、变量初始化、界面初始化、游戏初始化等,然后就可以进入游戏,处理游戏过程中的各种操作。社会可行性:本游戏的开发是作为毕业课程设计的,用来巩固先前所学的知识,是以个人为单位的,可供个人或他人平常娱乐解压所用,无须考虑有可能造成的社会影响,因此可以不用考虑到法律、版权等的社会因素,所以在这方面也是完全可行的。1.4 结论意见综上所述,本游戏软件的技术基本成熟。经分析管理可行性、经济可行性、技术可行性和社会可行性,在这些方面上均无重大问题,因此能够达到此次设计所预期的目的,所以可开始着手编写本次小游戏。2需求分析2.1 引言对软件需求的完全理解,对于软件开发工作的成功与否是至关重要的,需求说明的任务是发现、规范的过程,这有益于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,有助于采用工程方法开发软件,提高软件的质量,还有利于开发人员、维护人员、管理人员之间的交流以及协作,并且可以作为工作成果的原始依据;再者,亦可在向潜在用户传递软件功能、性能需求,使其能够判断该软件是否与自己的需求相符合。2.2 游戏需求玩家是通过对小人的移动操作来控制推动箱子的,并且玩家需要避过障碍物以及死角,才能将其推放到指定位置从而达到过关的目的。如果玩家将箱子推入死角导致箱子无法移动或不能移动到指定位置则闯关失败,可以通过悔步或重新开始等操作来重新挑战本关。游戏功能需求如下所示:游戏界面需求:简洁美观的用户界面,可以带给用户自然清晰的画面。四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计4游戏内容需求:良好的小人与箱子设计,可以给玩家带来更真实的感觉。小人需要前、后、左、右四张图片,移动中的箱子与终点上的箱子要所有区别,因此需要两不同的图片以示区别。键盘处理事件:控制小人与箱子的移动,可通过键盘方向键(上、下、左、右键)对小人进行上、下、左、右的移动,并且能够推动箱子。显示需求:当所有箱子都到达指定位置后即可过关,若进入死角则无法过关,需要进行悔步或重新开始的操作。可以由玩家喜欢选择关卡进行游戏。2.3 软硬件需求硬件环境需求:CPU:PentiumIII 600 以上;内存要求:600MB 以上;内存剩余资源:128MB 以上;软件环境:JDK 1.5 及其以上的版本。2.4 接口控制本小游戏需要通过键盘进行操作,在Windows的操作系统下,利用键盘的上、下、左、右键控制小人的行动来推动箱子,要使用键盘的接口事件。2.5 方案论证学校开设的关于学习编程语言的课程有C+语言、Java程序语言等,皆可用于编写推箱子小游戏的程序。2.5.1.C+语言的优点C+语言是对 C 语言的扩充,扩充的绝大部分来自著名语言中的最佳特性:从SIMULA 67 中吸取了类,从 ALGOL 68 中吸取了运算符一名多用、引用和在分程序中任何地方说明变量,综合了 Ada 的类属和 Clu 的模块特点,从 BCPL 中吸取异常处理,从BCPL 中吸取了用/表示注释。C+语言保持了 C 语言的紧凑、灵活、高效和易移植强的优点,它对数据抽象的支持主要在于类概念和机制,对面向对象风范的支持主要通过虚拟函数。C+语言既有数据抽象和面向对象能力,语言运行性能高多,加上 C 语言的普及,而从 C 语言至 C+语四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计5言的过渡较为平滑,以及 C+语言与 C 语言的兼容程度可使数据巨大的 C 语言程序能方便地在 C+语言环境中重用。尽管C+语言当初的设计本意是帮助管理大型程序,但其用途并不仅限于此。C+语言的面向对象的特性可有效地用于实际的程序设计工作。C+语言常常用于设计编辑器、数据库、个人文件系统以及通讯程序等。而且,由于C+语言共享C语言的效率,所以用C+语言可以构成很多高性能的系统软件。2.5.2.Java 语言的优点Java是定义位于网络计算的计算机语言,其技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。这些特点使得Java语言特别适用于用来开发网络上的应用程序;另外,作为一种面世较晚的语言,Java语言也集中体现和充分利用了若干当代软件技术新成果,例如C+语言、面向对象、多线程等等,它们所拥有的优点都让Java语言收入其中。开台无关性。如前所述,Java语言独特的运行机制使得它具有良好的二进制级的可移植性,利用Java语言,开发人员可以编写出与具体平台无关、普遍适用的应用程序,大大降低了开发、维护和管理的开销。Java是面向对象的编程语言。面向对象技术较好地适应了当今软件开发过程中新出现的种种传统面向过程语言所不能处理的问题,包括软件开发的规模扩大、升级加快、维护量增大经及开发分工日趋细化、专业化和标准化等,是一种迅速成熟、推广的软件开发方法。面向对象技术的核心是以更接近人类思维的方式建立计算机逻辑模型,它利用类和对象的机制将数据与其上的操作封装在一起,并通过统一的接口与外界交互,使反映现实世界实体的各个类在程序中能够独立、自治、继承;这种方法非常有利于提高程序的可维护性和可重用性,大大提高了开发效率和程序的可管理性,使得面向过程语言难于操纵的大规模软件可以很方便的创建、使用和维护。安全稳定可靠。对网络上应用程序的另一个需求是较高的安全可靠性。用户通过网络获取并在本地运行的应用程序必须是可依赖的,不会充当病毒或其他恶意操作的传播者而攻击用户的本地资源;同时它还应该是稳定的,轻易不会产生死机等错误,使得用户乐于使用。可以支持多线程。多线程是当今软件技术的又一重要成果,已成功应用在操作系统、应用开发等多个领域。多程序技术允许同一个程序有两个执行线索,即同时做两四 川 师 范 大 学 成 都 学 院 专 科 毕 业 设 计6件事情,满足了一些复杂软件的需求。Java不但内置多线程功能,而且提供语言级的多线程支持,即定义了一些用于建立、管理多线程的类和方法,使得开发具有多线程功能的程序变得简单、容易和有效。综合先前所述,衍生自C+的Java语言,出于安全稳定性的考虑,去除了C+中不容

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论