坦克大战系统《Java程序开发实训》综合实训报告_第1页
坦克大战系统《Java程序开发实训》综合实训报告_第2页
坦克大战系统《Java程序开发实训》综合实训报告_第3页
坦克大战系统《Java程序开发实训》综合实训报告_第4页
全文预览已结束

下载本文档

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

文档简介

.../《Java程序开发实训》综合实训报告题目:坦克大战系统姓名:方庆 学号:2010203206班级:10软件〔2班系统实现的主要功能及运行结果截图选择的语言的原因游戏本身是一种娱乐方式,带给人无尽的乐趣,而且游戏行业的发展也将是带动周边行业的发展。同样对做出游戏的人的要求也会越来越高一满足游戏爱好者的要求。本次期末设计就是设计一种娱乐性较强的小游戏坦克大战,说到大战其实是不敢当的。但游戏基本拥有可玩性。java语言是一种跨平台,适合与分布计算环境的面向对象编程语言,java主要用在web开发,手机游戏及一些平台游戏的开发,他有很好的跨平台性。所以本次的设计坦克游戏选择的是java。系统软件的软件环境1.网络服务器操作系统:Window是XP以上2.开发工具:Eclipse3运行环境:J2sdk4.编程语言:java语言。人机对战模式功能1.能够发射子弹打击敌人2.敌人能够移动3.能够模拟爆炸4.能够产生障碍5能够增长生命6.能够使用超级子弹坦克可以发射子弹玩家坦克被击中血量减少。被击中的坦克发生爆炸并且吃血块可以加血量。玩家坦克可以从把方向发射超级子弹自己的TankHealth为<=0时,。说明玩家坦克已死亡。游戏结束本系统的坦克大战是基于java语言设计的开发,具有较高的人工智能和相对的图形处理。游戏可一人作战每次电脑方有10辆坦克,此一举消灭全部的敌方坦克为目的。在这过程中坦克有机会得到血块来添加自己的生命值。从而变得强大。也利用wall来形成阻击敌人。游戏拥有开挂的功能。可以穿过墙体来攻击敌方坦克。还给玩家坦克置了超级炮弹。从八个方向同时射出炮弹来摧毁敌方坦克。主要功能简单罗列如下:1.屏幕左上方显示游戏的状态,当玩家方坦克全数为0是游戏结束2.敌方坦克只在空地上行走,不可通过Wall3.游戏打坏敌方坦克后,可随机位置随机出现血块奖励。坦克经过该位置可获得相应的生命值加成。4.玩家坦克的游戏资格和电脑坦克不同。TankClient类设计流程游戏系统类关联图TankClient类此类主要功能是利用java中包来实现的坦克游戏的主主窗口,以及对其他类调用和实例化Blood类此类主要定义坦克的生命值,有可以控制玩家坦克加血等操作方法。Missile类此类主要的是游戏中的炮弹类,其中有炮弹的大小以及移动等成员。BaoZha类此类定义的是坦克被攻击的爆炸,其中有坦克击毁的图形变化等成员。Tank基本类功能分析Tank类中,封装了一些变量属性,包括坦克自己的大小。运动速度方向控制、生死控制、好坏控制。Tank类中没有main函数,不是主类,它当中只封装一些变量属性和静态方法,被TankClient类调用来实现坦克的一系列动作Tank类主要方法如下:1.getRect<>方法publicRectanglegetRect〔{ReturnnewRectangle〔x,ythis.WIDTH,this.HEIGHT}Rectangle类是碰撞检测的辅助类,通过得到子弹x,y的坐标。检测是否碰撞.2.draw〔方法:负责将所有的活动在屏幕上画出来;3.move〔方法:主要负责坦克的移动,包括八个方向的控制以及坦克一个移动速度;4.boolean<>方法:设定键盘事件。控制坦克移动5.KeyRelesed〔方法:处理按键抬起事件,安"J"键时,发射普通炮弹。抬起"K"键发射超级炮弹6.locationDirection〔方法:定义炮筒的方向,可以向八个方向发射炮弹7.fire〔方法:处理发送子弹的方法;Missile类的基本功能分析Missile〔子弹类和Tank类一样,只封装一些变量属性和静态方法,主要包括:子弹的大小,运动的速度,Missile类持有一个TankClient类的引用tc,TankClient类要执行发射炮弹操作是调用Missile类中的方法。Missile类中的方法主要如下:1.draw〔方法:负责画出子弹的所有活动2.move〔方法:先判断方向在移动。并且给一定的移动速度。3.个头Rect方法:负责取得子弹的方形,为碰撞做准备;4.hitTank〔方法:检测子弹是否撞到坦克撞到返回ture,否则返回false。BaoZha类的基本功能分析BaoZha〔爆炸类也是封装自己的变量和方法的外部包装类,没有main方法,供TankClient主类需要时调用它的draw〔方法,当子弹击中坦克是需要产生爆炸。下面是爆炸的图片:综合实训过程中遇到的问题及解决方法遇到的问题:炮弹不消失坦克出界解决方案:加入控制炮弹生死的量live〔Missile当炮弹死去的就不需要对其重画当炮弹飞出边界就消失但炮弹死亡就从界面上消失本次综合实训中的收获及体会学习java两个学期来,有自己的一些见解。Java是面向对象的,具有平台无关性,现在被广泛应用很多领域。也是因为老师在开始讲课是给我们讲解过,所以有兴趣去学习java程序设计。首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME〔KJAVA。J2SE,Java2PlatformStandardEdition,我们经常说到的JDK,就主要指的这个,它是三者的基础,属于桌面级应用开发,这部分如果学得好很容易拓展J2EE和J2ME。J2ME,TheMicroEditionoftheJava2Platform。主要用于嵌入式Java,如手机,PDA等等。J2EE,Java2Platform,EnterpriseEdition,就是所谓的企业级Java,适合企业的大型应用开发。我感觉学习java应该是循环渐进,有始有终,按部就班,脚踏地.java是一门有着阶梯性的一门语言,如果要学习它.我觉得最好还是按照java的学习体系,先学习什么,在学习什么,只有这样,我们在学习中才会遇到更少的麻烦.感觉java是一门更倾向于网络的语言.不要上来就学习JSP,这样不好,因为这没有基础.在以后的学习中很可能遇到很多的麻烦,这就不好了.信心,恒心,毅力是最重要的.这是我们必须具备的心理素质.要是学习这门语言开始的时候很有兴趣,遇到苦难就退缩,这样最终会放弃学习java,没有经历风雨怎么见彩虹.编程就是有的时候就是那么.会遇到很多的困惑.但是一旦你弄懂了,或者是你把问题解决了,你会感到很兴奋,编程的快乐就在此了。多看看一些资料,多多的向高手请教,这样才好.要学会总结和领会.,当然,学习java一个人有一个人的想法,也有自己的独学习方法.总之适合自己的就是最好的,要听老师讲的,理解他的思路,然后试着写老师讲的代码,不会的时候可以看看老师的代码,关键是要知道代码为什么这样写,还要学会检查异常,解决异常,这一点也很重要。我觉得我学习这么多天,就是写代码,改错。代码写的多了,自然就知道该怎么写了。本系统基本实现了坦克游戏的可玩性,希望自己以后多做这方面的练习对本课程教学的建议从打开始我们软件〔2班的所有同学都上过魏晓东老师您的课。现在又有你教的java课。说是对本课程教学的一点建议。其实还真的找不出本课程中教学中老师您教学的任何毛病。只能说说我对java课程学习的一些要求及和别人分享下java学习中的一点心得。在课程教学中,我们要跟上老师的步伐。要积极在老师的分享java题目中理解。并且能向更高层攀爬。要积极的抄写代码。也正如老师说的。在抄写代码的过程中学会理解。然后把书或资料蒙上,也能写出来。这样就可以在学习中进步,才能更好的在学习java中发展下去。其次要多问问老师及同学,这是在所有学习知识中不可缺少的一部分。我们之所以能学习。那不是天生的,而是一步一步的在不断听取别人意见中改变的。所以这样的要求也是不可或缺的。这也不需要我多加申明。我想每个人都有不一样的经历但有相同的体会。还有下面我想对学校课程安排上的一些建议。就是在我们安排的课程表上你会发现所有的java课都在同一天的下午。4节连堂感觉压力很大。而且都是上机课。这让我们身上在加了一座山。这对本来视力不太好的我也是一个打击。我想对老师也是一种考验。不仅要考虑我们的感受。想我们能不能接受这课程的内容,还有就是自己精力的

温馨提示

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

评论

0/150

提交评论