您好,欢迎访问三七文档
湖北大学大二Java课程设计计科1401湖北大学JAVA课程设计论文题目坦克大战游戏姓名张诚学号2014221119200156姓名柳谦学号2014221119200091专业年级计算机科学与技术1401指导教师王雷春职称副教授2016年5月湖北大学大二Java课程设计计科1401目录绪论......................................................................41背景.....................................................................42课程设计目标及目的.......................................................52.1课程设计的目标.....................................................52.2课程设计的目的.....................................................52.3可行性分析.........................................................52.3.1技术可行性...................................................52.3.2经济可行性分析...............................................63概要设计.................................................................64详细设计.................................................................74.1项目与类的结构图...................................................74.2各类实现的功能概要.................................................74.2.1barrier包...................................................74.2.2lightButton包...............................................74.2.3Tankwar包...................................................74.2.4mapediter包.................................................84.3主要类的的UML图及主要成员变量和函数说明...........................84.3.1Barrier类...................................................84.3.2LightButton类..............................................114.3.3Mapediter类................................................134.3.4Main类.....................................................154.3.5Boom类.....................................................184.3.6Item类.....................................................184.3.7Missle类...................................................214.3.8PanelShow类................................................254.3.9Tank类.....................................................264.3.10TankWar类.................................................335运行结果................................................................396总结....................................................................467参考文献................................................................468附录....................................................................47坦克大战湖北大学大二Java课程设计计科1401摘要坦克大战是一款最初由日本南梦宫Namco游戏公司1985年在任天堂FC平台上,推出的一款多方位平面射击游戏。一经推出,人气十分高涨,然后又陆续推出了GB,PC等版本,玩法也大大扩充,由最初的单人2D过关演变到如今的多人3D联网对战游戏,我们小时候应该都体验过,之前C#课程中已经了解过有关信息,如今就想同样以Java为载体编写一款坦克大战。本课题展示了如何使用Java编写出能够实际运行的单人版坦克大战游戏。课题介绍了项目的功能、类的设计和逻辑难点等重要点。通过本课题,你可以了解到有关Java开发在实际运用中的基础知识、并对应用游戏开发有一定的新的认识。湖北大学大二Java课程设计计科1401绪论Java是由SunMicrosystems公司推出的Java面向对象程序设计语言。Sun公司在推出Java之际就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。其官方定义是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。”。其一经推出,就获得了众多程序员的青睐,发展至今已有21年的历史,仍然是当今最受追捧得的变成语言之一。我们已经初步了解了Java的有关知识,想切身体验一下Java编程语言的特点,同时老师也要求我们完成课程设计,加上回想起小时候玩过的坦克大战游戏,于是就有了此设想。1背景2015年11月编程语言排行榜中,Java语言仍然在持续上涨,其份额已经达到了20%占据榜首。加上基于java开发的安卓手机系统是当今无可置疑的市场第一位,同时互联网也发展迅速,而在web开发领域,java也处于领导地位,当前很长一段时间之内,java编程语言的前途十分光明,我们很有必要掌握这门技术。同时人们对游戏的热情经久不衰,而其中坦克大战作为一个推出已有10余年的游戏,其活力仍不减当年,至今仍有各种各样版本的坦湖北大学大二Java课程设计计科1401克大战在各大平台上运行。于是我们便想运用java开发一个简单的坦克大战游戏。2课程设计目标及目的2.1课程设计的目标运用Java编程语言,编写出能够实际运行的单人坦克大战游戏2.2课程设计的目的1.了解Java应用游戏的开发基础2.获取有关Java编程开发的实际知识3.锻炼自身动手实践能力4.切身体验Java编程开发步骤5.于动手操作过程中验证所学知识2.3可行性分析2.3.1技术可行性我们设计的坦克大战入门版并没有什么高深的技术难题,尚未涉及到联网等事件,经查阅资料,我们认定,补充部分课堂外的知识,自身完全能够制作一个简单的坦克大战。湖北大学大二Java课程设计计科14012.3.2经济可行性分析本组制作的坦克大战为入门版游戏,网上资源比较丰富,书籍图书馆也有收藏,除需花费一定时间外,无需其他经济支出,故较容易实现3概要设计本程序是一个有趣且富有挑战性的2D单人游戏。本游戏为彩色界面,有主菜单,选择菜单等功能,其中主菜单包含有Start,Map,Help,Abort,Exit五个选项。游戏过程中,玩家操纵己方坦克摧毁敌方坦克保卫己方家园以获得分数奖励。·坦克大战入门板坦克大战界面显示游戏对象图形绘制游戏逻辑实现主界面关于界面帮助界面玩家坦克设置界面敌人坦克游戏道具坦克绘制子弹绘制道具绘制背景绘制开火逻辑碰撞检测升级湖北大学大二Java课程设计计科14014详细设计4.1项目与类的结构图4.2各类实现的功能概要4.2.1barrier包Barrierlei类:描述素材的基本属性及排布方法EnemyBorn类:描述敌人出生点Gold类:描述金块障碍物Home类:描述基地Iron类:描述铁块障碍物SelfBorn类:描述自身出生点Wall类:描述砖块障碍物4.2.2lightButton包LightButton类:实现初始界面的按钮动态点击效果,按下有下凹质感且亮度变化4.2.3Tankwar包Help类:主界面help按钮呼出文本显示框Boom类:爆炸判定,效果显示TankwarbarriermapediterlightButton湖北大学大二Java课程设计计科1401Item类:随机掉落物品奖励Main类:游戏主界面Missle类:炮弹运行PanelShow类:右边统计栏信息Tank类:坦克基本属性,行动方式Tankwar类:游戏运行主界面4.2.4mapediter包Mapediter类:查看地图,编辑新地图并检验地图是否合乎规则,保存地图。4.3主要类的的UML图及主要成员变量和函数说明4.3.1Barrier类BarrierSIZE:intx:inty:inthp:intface:ImageIcon湖北大学大二Java课程设计计科1401主要成员变量含义SIZE:int障碍物方块大小Barrier(int,int)draw(Graphics):voidgetFace():ImagegetHp():intgetX():intgetY():intsetFace(Image):voidsetHp(int):voidsetX(int):voidsetY(int):void湖北大学大二Java课程设计计科1401x:int障碍物x坐标y:int障碍物y坐标hp:int障碍物的血量face:Image障碍物贴图主要成员函数含义Barrier(int,int)障碍物的坐标draw(Graphics):void素材绘制getFace():Image返回贴图getHp():int返回血量值getX():int返回x坐标getY():int返回y坐标setFace(Image):void插入贴图setHp(int):void赋予血量值setX(int):void赋予x坐标setY(int):void赋予y坐标湖北大学大二Java课程设计计科14014.3.2LightButton类LightButtonshadowOffsetX:floatshadowOffsetY:floatshadowColor:colorshadowDirection:intnormalButton:ImagenormalButtonPressed:ImagebuttonHighlight:ImageshadowDistance:intsourceInsets:InsetsbuttonDimension:DimensionbuttonForeground:colorbuttonForeground:fontLightButton(string)LightButton(int,int,int,int,string)LightButton(Action)LightButton()
本文标题:坦克大战设计
链接地址:https://www.777doc.com/doc-4857778 .html