坦克大战设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1 绪论 (1)
1.1 国内外单机游戏的研究现状 (1)
1.2 研究意义 (2)
2 开发环境和相关技术的介绍 (2)
2.1 开发环境 (2)
2.2 Java的特点 (3)
2.3 关于Eclipse (5)
3 系统的分析 (6)
3.1可行性分析 (6)
3.2需求分析 (7)
4 系统功能及相关技术 (7)
4.1 游戏功能 (7)
4.2 游戏规则 (7)
4.3 游戏界面和操作方式 (8)
4.4 本程序需解决的有关技术问题 (8)
4.5 相关技术的介绍 (9)
4.5.1 关于JFrame (9)
4.5.2 绘图技术 (9)
4.5.3 事件监听机制 (10)
4.5.4 关于多线程 (11)
5 系统的总体设计 (12)
5.1 TankWarClient.java (12)
5.2 Tank.java (12)
5.3 Bullet.java (13)
5.4 Explode.java (13)
5.5 Missile.java (13)
5.6 Wall.java (13)
5.7 Direction.java (14)
6 系统的详细设计与实现 (14)
6.1 游戏窗口与我的坦克 (14)
6.1.1 窗口 (14)
6.1.2 面板中加入坦克 (15)
6.1.3 让坦克动起来 (17)
6.2 坦克作战 (18)
6.2.1 添加子弹、超级子弹类 (18)
6.2.2 打出子弹 (19)
6.2.3 将敌人坦克击毙 (19)
6.2.4 爆炸效果 (20)
6.3 系统优化 (20)
6.4 坦克大战系统炮弹功能测试 (22)
6.4.1 按CTRL打炮弹的测试 (22)
6.4.2 功能测试图 (22)
7 总结 (23)
附录 (24)
参考文献 (51)
致谢 (52)
1 绪论
1.1 国内外单机游戏的研究现状
近年来,因特网在国内迅速普及,导致了网络游戏的高速发展。单机游戏市场呈现爆炸式的发展。尤其是国内外巨大的个人电脑拥有量,更是让商家看到了商机,手机游戏市场利润将会十分丰厚。面对潜力如此巨大的单机游戏市场,各游戏开发商、电脑生产厂商等都纷纷开始了各自的应战准备,以便抢占商机。
由于大部分人都对电脑操作都不是很熟悉,所以对于操作负责的网络游戏的推广有一定的影响,而单机游戏凭借自身操作简单、收费低廉、对电脑要求较低、有益身心等优点而较好推广,对于我国单机游戏而言,还处于起步阶段,有着较大的商业潜力,但是也存在着正版保护意识不强、利润较低等不利因素,还需要进一步的发展。
该游戏是一款以黑白机为平台的平面操作射击游戏,1名玩家可控制自己的坦克进行移动和射击,以保护总部为前提,歼灭对方为胜利目标。每个关卡的地形不同,玩家可利用各种地形对敌人进行打击,并会得到补给。两人配合游戏时,每一关都有不一样的战术,以便能顺利完成关卡目标,对于玩家来说大大加强了游戏乐趣。其操作简单且娱乐性强,是一款男女老少皆宜的游戏。游戏附带地图编辑器,玩家可自行编辑地图进行游戏。游戏中的众多经典关卡至今还让许多玩家记忆犹新,在80年代时曾经在无数家庭中带来了无尽的欢乐。Java语言是当今最为流行的程序设计语言之一作为一门非常优秀和极为健壮的编程语言,它同时具有的面向对象,与平台无关,分布式应用,安全,稳定和多线程等优良的特征,使用Java语言,不仅可以开发出功能强大的大型应用程序,而且Java语言本身突出的跨平台的特性也使得它特别适合于Internet上的应用开发,可以这样说,Java的出现使得所开发的应用程序“一次编写,处处可用”的实现成为了可能。本课题就是想对该游戏进行分析研究,借助于它的游戏规则,用java语言模拟开发一个类似的,功能相对简单的单机小游戏。从而使自己更清楚的认识小游戏开发需要的知识和开发的环节和涉及到的领域。同时本课题所用的知识为J2SE里面的知识,Java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。J2SE,J2ME 和J2EE,这也就是SunONE(Open NetEnvironment)体系。J2SE就是Java2的标准
版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。您也许已经见过这样的报告,即一些新的 Java 语言变化包含易于开发性主题。这些变化包括泛型、元数据、autoboxing、增强的 for 循环、枚举类型、静态导入、C 风格的格式化 I/O、可变参数、并发实用程序以及更简单的 RMI 接口生成。 JSR 201 包括如下四个语言变化:增强的 for 循环、枚举类型、静态导入和 autoboxing;JSR175 指定了新的元数据功能,而 JSR 14 则详细说明了泛型。 javac 编译器执行的默认语言规范是版本 1.4(并非最新版本)。这意味着要利用以下语言变化的任何好处,需要向 javac 命令传递参数 -source 1.5。
1.2 研究意义
单机游戏由于其不必连入互联网也可进行游戏从而摆脱了很多的限
制,只需要一台计算机即可体验游戏,同时也可以通过多人模式来实现玩家间的互动,当今的很多单机游戏都是精工细做而成,更能呈现出较好的画面、优良的游戏性,相比网络游戏而言更有可玩性,游戏的种类更加丰富,各种游戏类型多不胜数。但如果没有好的配置也可以玩一些不需要高配置的游戏。
单机游戏往往比网络游戏的画面更加细腻,剧情也更加丰富、生动。在游戏主题的故事背景下展开的一系列游戏体验,往往给人一种身临其境的感觉。而且很多发展至今已经有多部作品的单机游戏系列,大多都如电影般讲述了一个剧情波澜起伏的精彩故事,并且让玩家将自己融入到故事中,去闯荡属于自己的另一个世界,打造自己的史诗与传奇经历。
2 开发环境和相关技术的介绍
2.1 开发环境
操作系统:Microsoft Windows XP,Window7等
程序语言:Java
开发工具:MYEclipse6.5