javagui开发俄罗斯方块游戏.doc
《javagui开发俄罗斯方块游戏.doc》由会员分享,可在线阅读,更多相关《javagui开发俄罗斯方块游戏.doc(39页珍藏版)》请在咨信网上搜索。
1、使用JAVA GUI开发俄罗斯方块游戏学 院: 软件学院 专 业: 软件工程 指导教师: 2014年9月1 使用JAVAGUI开发俄罗斯方块游戏 摘 要 随着通信技术的发展和电脑的普及,小游戏的开发技术越来越为人们所关注。以J2SE为开发平台,利用Java提供强大工具,不但可以在电脑上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种电脑小游戏。本文在介绍J2SE及其体系结构的基础上,以俄罗斯方块游戏为实例,描述了借助J2SE的类库开发电脑小游戏的过程。关键词:游戏,应用程序,永久性数据 The Use of JAVAGUI Development of
2、 Tetris Game AbstractAlong with communication development and computer popularization, people more and more pay attention to the handset game development technology. Develops the platform take J2SE, provides the powerful tool using Java, not only may realize the handset functions that static HTML te
3、chnology be unable to realize, such as computation processing, data storage, and communication with server, but also can develop all kinds of handset games. On the basis of the technology and architecture of J2SE being introduced, the Russian game was taken as a example, the development process of g
4、ame with the aid of the J2SE class library is described in this article.KeyWords: game,application pragram, Permanent data目 录1 引言11.1研究现状11.2主要研究的目的及内容22 应用需求分析与可行性分析42.1 应用需求分析42.2 其他需求分析52.4 可行性分析62.4.1经济可行性62.4.2技术可行性62.4.3 运行可行性62.4.4 时间可行性62.4.5 法律可行性62.5 系统开发步骤73 工程概况83.1 项目名称83.2 设计平台83.3程序设计
5、思想103.4主要实现的功能114 开发背景135 游戏的实现215.1游戏设计的具体实现215.1.1游戏界面的设计实现215.1.2俄罗斯方块的造型225.1.3俄罗斯方块的旋转225.1.4如何实现方块的运动和自动消除满行的方块23 第 页 共 页 5.1.5游戏速度和游戏级别自由选择245.1.6游戏得分的计算和游戏菜单的编辑255.2 游戏功能的介绍256 系统测试286.1 游戏界面菜单选项的功能测试286.2 按键事件的功能测试286.3方块堆砌与消行测试296.4 测试结果分析297 总结30参考文献31致谢32 第 页 共 页 1 引言1.1研究现状Java语言是美国Sun
6、Microsystem的James Gosling、Pratrick Naughton及Mike Sheridan等人于1991年精心设计出来的计算机编程语言,其构想在于实现使用同一种编程语言所写出来的程序可以在不同的平台上运作。这种架构对于消费性电子产品而言是具有革命性的,因为在消费性电子产品中的处理器及操作系统各不相同,要在这些平台上开发程序必须要了解各个平台的特性,以及其提供的API使用方式,分别开发不同的版本才能执行,影响应用程序的普及性。近几年,由于微处理器性能的大幅提升,加上无线通讯技术的突破,手持式电脑设备开始受到大众的青睐。短短几年内,电脑已经升级了几代产品,普及率逐年攀升,生
7、产效率不断上升,产品价格比个人电脑的摩尔定律有更惊人的下调,以至电脑是大多是城市居民不可缺少的一件随身设备。继短信、彩信等服务之后,中国移动提供基于Java的百宝箱业务,应用产品遍及商务应用、信息获取、英汉互译、游戏娱乐等多媒体领域1。为了适应移动数据的发展,推动无线电子商务等业务的发展,J2SE既用于嵌入式系统的Java被引入电脑领域。J2SE的出现实际上是Java技术的回归。作为Java2平台的一部分,J2SE与J2ME、J2EE一起,为应用的客户端和服务器端建立了完整的开发、部署环境2。随着J2SE的应用,它为移动互联引入了一种新的模型,既允许电脑可以从互联网上下载各种应用程序,并在电脑
8、创造可执行环境离线运行这些程序。由于定义了可执行下载的标准,并在电脑上创立了可执行环境和程序开发语言,由此,在电脑业第一次为软件开发商创造了巨大的商业机会,电脑用户在得到丰富应用体验的同时,也大大提高了运营商的网络流量。随着通信技术的发展和电脑的普及,电脑游戏的开发技术越来越为人们所关注。以J2SE为开发平台,利用Java提供强大工具,不但可以在电脑上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种电脑游戏。JAVA语言继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。随着21世纪信息社会的到来,电脑在人们的工作和生活中的
9、深入,要求我们越来越多地与电脑打交道,为了使用户在繁忙的日程工作中得到放松,于是出现了各种各样的休闲软件3,如聊天工具,游戏等等。于是我们小组着手设计开始一个这样的电脑游戏软件。通过这学期来对J2SE技术的学习,我初步掌握了JAVA语言的最基本的知识,于是在指导老师的指导下动手用J2SE编写俄罗斯方块电脑游戏。无可争议,俄罗斯方块是有史以来最伟大的游戏之一。它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物。俄罗斯方块举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观。某些与坠落的玩具碎片和它们的形状有关的东西,使得哪怕新手也会很自然地
10、企图把它们排列起来,并加以适当组合,就好似俄罗斯方块触动了我们某些内在的感官,使得哪怕是我们当中最杂乱无章的人也要把事情整理妥当。 在曾经发布过的所有游戏中,俄罗斯方块还被认为是仅有的一个能够真正吸引广泛人群的作品。某些批评家也许会声称,俄罗斯方块要比过去二十年间出现的任何东西都要浪费人们的时间。至于我们,则要欣然提名它为GameSpot评选出的历史上最伟大游戏之一。为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用JAVA语言开发一个经典的俄罗斯方块游戏。1.2主要研究的目的及内容 游戏作为人们日常生活的一个重要的娱乐项目,也带动了巨大的游戏
11、相关产业市场的发展。游戏平台从游戏机、电视游戏,到pc游戏,到电脑游戏,中间经历了很多的技术的变革。随着新技术的发展和人们生活水平的提高,电脑开始逐渐普及,电脑以其小巧便捷,方便的特性成为人们的必备通讯工具。而基于电脑平台的电脑游戏也就拥有了巨大的市场空间,随着3g的开通和应用,电脑游戏必将迎来新的一轮游戏热潮。小游戏制作的目的是满足了人们休闲的需要,在紧张工作之余休闲类的小游戏能够给人带来最大程度的放松,也可以增进人们之间的交流,沟通,方便人们娱乐的目的。另外也通过本程序将几年来所学的专业知识和其他方面的知识融入到实际应用中。 通过此次课题的设计,掌握如何制作一个俄罗斯方块游戏软件,以及制作
12、游戏软件的整个流程,制作游戏软件的步骤,为以后的就业工作打下基础。2 应用需求分析与可行性分析项目实现了俄罗斯方块游戏的所有基本功能,同时,为了满足玩家的个人需求,在游戏中设置了难度选择,从而使玩家根据自身水平选择合适的游戏难度;在程序中设置了当游戏窗口最小化时,游戏能够自动暂停,窗口恢复时游戏自动继续的功能以方便玩家的游戏操作;游戏按键使用最基本的键位设置,从而使操作更加简单,更容易上手,且不易失误。力争使游戏具有可靠性,安全性,完整性,灵活性,开发出一款更加适合人们需求的俄罗斯方块游戏。屏幕上有一个X列Y行的区域,计算机自动产生7种不同形状的方块,并出现在区域的最顶端,然后每过一个固定的时
13、间向下落移动一格。玩家可用上、下、左、右及空格键来控制方块的旋转和移动,以便按照玩家所需要的形态和位置落下,不过前提是方块移动和旋转后的位置必须是空的。这7种方块可以旋转90、180、270,因此每种方块有4种状态,7种方块总共有28种状态。另外,在游戏区域产生一个新的方块的一瞬间,立即产生下一个下落方块的形状并在提示区域的左上方有预先提示。同时,在游戏界面的右下方,将显示玩家所得的分数以及游戏的难度级别。每当游戏玩家成功消除一行方块时,将按照一定的算法计算出所得分数,并修改游戏状态区域的分数和行数的数值。本游戏提供了数种游戏级别,用户可根据自己的兴趣选择相应的级别4。下落方块可以通过旋转改变
14、其显示形状,并且不断地往下落,直到它接触到游戏区域底部或者其他已经垒叠起来的下落方块。当一个下落方块到达游戏区域底部或者接触到其他已经垒叠起的下落方块后,其位置即确定下来,并占有该空间的位置区域。如果落下时,方块的方格能填满某一行,则这一行可消去。消去一行后,游戏可给玩家加分,垒在其上的方块将按照一定的算法落下来代替该行空间。游戏的结束是以下落方块的顶部到达游戏区域顶部作为判断依据,若存在空格的方块填满整个窗口,则游戏失败。系统默认设置使用右边的窗口,用光标操作:“”左移一格;“”右移一格;“”变形;“”下移一格;“空格”丢下方块。2.1 应用需求分析硬件环境:内存:512M,硬盘:256M,
15、cpu:1.8HZ以上软件环境: MyEclipse8.5,JDK1.6和MySQL数据库。2.2 运行需求分析硬件条件:酷睿 CPU、1G RAM、10G硬盘以上的PC机;打印机;局域网。软件条件:Windows XP IE6.0以上2.2 其他需求分析(一)、 游戏主界面功能需求良好的用户界面,能够在视觉上吸引玩家。为了使界面简洁美观,需要在主界面中添加背景图片来渲染游戏的气氛,同时为了便于玩家的操作,需要设置四个按钮供玩家选择,分别是“游戏”、“控制”、“风格”、“系统”。这样的设置让用户一目了然。玩家可以自己选择不同的背景颜色,游戏难度,和不同风格的界面。(二)、 俄罗斯游戏功能需求游
16、戏界面要求美观大方。该界面由4个模块构成,分别是游戏、控制、风格和系统。其中游戏条包括新游戏、设置前景色、设置背景色、增加难度、降低难度和退出等功能。控制面板包括预提示面板,当前信息提示面板和游戏控制按钮面板。在游戏中,玩家可以根据自己的需要设置游戏级别。为了满足玩家的心理需求,还添加了排行榜的功能,方便玩家及时记录自己游戏战绩,在本游戏上获得成绩前十名,将进入游戏的英雄榜5。为了进一步方便玩家的实际操作,还为部分操作添加了快捷键的功能,用户无需点击按钮或菜单项即可达到游戏目的。(三)、 俄罗斯方块的需求良好的方块形状设计,绘制七种常见的基本图形,各个方块要能实现旋转变形、移动和显示。方块的旋
17、转可设为顺时针或逆时针,本游戏采用逆时针变形。(四)、 键盘处理事件的需求方块下落时,可通过键盘方向键(上、下、左、右、空格键)对该方块进行向上(旋转变形),向下移动、向左移动、向右移动和丢下操作。(五)、 显示需求当方块填满一行时可以消行,剩余方块向下按照一定的算法向下移动并统计分数。当达到一定的分数时游戏升级,并显示游戏升级信息;当游戏方块填满整个屏幕时,游戏结束,并显示游戏结束信息。本游戏共设置不同级别,方块的下落速度随着级别的升高而加快。2.4 可行性分析2.4.1经济可行性本游戏是为丰富人们业余生活开发的,规模适中,工作复杂性低,实用性强。从开发人力、物力、时间上考虑,开发成本少。而
18、且利用了开源开发环境MyEclipse8.5,加快了开发进度,大大的缩短了开发周期,节省了人力、物力、时间,提高了项目开发的效率,降低了开发成本。由于需求分析完整,减少了很多后期维护的复杂性。另外,本系统具有很实用的现实意义6。因此,从经济角度考虑本系统的开发在经济上是完全可行的。2.4.2技术可行性可用于本游戏的编程语言有Java 、VC+、C#.NET等,考虑到编写程序的难易程度,和对语言的了解程度以及各种编程语言自身的特点,选择乐Java作为编程语言进行开发。首先 ,作为一种程序设计语言 ,Java是一种简单的、面向对象的、分布式的、健壮的、安全的、结构中立的、易移植的、多线程的动态语言
19、。它不依赖于机器的结构,并且提供了并发的机制、具有很高的性能。其次 ,它最大限度地利用了网络,Java的小应用程序可在网络上传输而不受 CPU和环境的限制。另外 ,Java还提供了丰富的类库 ,使程序设计者可以很方便地建立自己的系统。2.4.3 运行可行性本游戏是采用java的GUI ( 图形用户界面) 组件创建的简单有好的操作界面,运行也效果简单明了,所有功能均根据基本需求进行开发。强调人机环境三者作为一个系统进行总体设计。使操作更人性化,减轻了用户的认知负担,使其更适合用户的操作需求。对所有数据的输入进行完整性和合法性检查7,尽量减少误操作。因此在操作上是可行的。2.4.4 时间可行性从时
20、间上看,在两个月的时间里学习相关知识,并开发JAVA GUI 的俄罗斯方块游戏,时间有点紧凑但是完全可行的。2.4.5 法律可行性本游戏的开发作为毕业课程设计以提高分析和解决实际问题的能力,以个人为单位,仅供个人平常娱乐所用,所用他人的成果部分都已注明。所以不存在侵权的问题。该软件是合法的,不会引起任何社会问题。因此,从法律上考虑本系统是可行的。2.5 系统开发步骤详细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序8。详细设计阶段的任务还不是具体地编写程序
21、,而是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的代码。因此,详细设计的结果基本上决定了最终的程序代码的质量。3 工程概况3.1 项目名称俄罗斯方块游戏3.2 设计平台J2SE是Java 2的一个组成部分,它与J2ME、J2EE并称。根据Sun的定义:J2SE是一种高度优化的Java运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等。J2SE技术在1999年的JavaOne Developer Conference大会上正式推出,它将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。Java2平台包括:标准
22、版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。J2SE,J2ME和J2EE,这也就是SunONE(Open NetEnvironment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统9。Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javagui 开发 俄罗斯方块 游戏
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。