- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
陕西国防学院
《Java语言》课程期末实训
题 目 坦克大战
学 院 电子信息学院
专 业 软件技术
班 别 软件 3132班
学 号 3531323X
姓 名 小智
2015年3 月6 日
一、 课程题目
坦克大战 (Java版本)
实现一个java版本的坦克大战游戏
【功能提示】
1. 游戏要有图形用户界面,界面能够反映游戏所有的细节。
2. 界面中要有坦克,墙,树林,河流。
3. 界面中要有一个 “家”, “家”被攻击中则输了游戏。
4. 坦克分两种,敌方和我方。
5. 墙也分为两种,可以穿透的普通墙,不可以穿透的铁墙。
6. 树和河流均只有一种,树林坦克可以通过。
7. 坦克可以发射子弹,敌我方的子弹属性一样。
8. 我方子弹可以杀死敌方坦克,敌方子弹也可以杀死我方坦克,但需要多枪子
弹才可以杀死。
9. 敌方之间不可以杀死对方。
10.子弹击中坦克要有爆炸,但击中墙不能爆炸。
11.我方可以吃血包增加生命。
12.游戏可以暂停,重新开始,游戏帮助等功能。具体如下图:
13.
二、 题目分析与设计
需求分析
1. 设计一个图形用户界面,将所有游戏的元素都能在此用于界面上表
现出来,界面能够接受用户的操作,具有人机交互功能。用户可以
选择重新开始游戏,退出游戏,暂停游戏和查找游戏帮助。
2. 界面中包含坦克,树,河流,阻挡墙和游戏用户所要保护的 “家”。
3. 坦克:坦克分为两种,敌方坦克和用户控制的坦克。用户方和敌方
坦克均可以发射子弹,可以改变路径的行走,且在行走过程中遇到
墙等阻碍物和游戏边界时要改变方向,而不能一直顶着障碍物不放。
坦克之间不能穿越,碰撞到后自动调换方向。
4. 树:界面中要包括树林,作为遮掩物体和修饰物体,以便增加游戏的
元素,使得游戏更加贴切人性化。树的数目不限,以游戏整体界面
清晰美观来决定数目。
5. 河流:界面中要包括河流,河流作用与树林相同,同样河流的数目
不限,以游戏界面整体美观度来决定数目。
6. 墙:墙体分为两种,普通的墙和铁墙,普通的墙在受到子弹袭击时
会损坏,而铁墙可以阻碍子弹的穿越。两方的坦克均不能穿越两种
墙体,但都可以摧毁普通墙体。普通墙体的数目配合其他元素合理
安排,铁墙则不宜过多,不然游戏难度太低甚至因为坦克不能穿越
铁墙而使得游戏无法进行下去。
7. “家”:用户方除了有一辆自己的坦克外还有一个要保护的家,家由
普通墙体包围,家受到子弹攻击后游戏立即结束,用户方则输了本
局游戏。
8. 子弹:子弹可以由敌方和用户方发射,且发射出去的子弹可以直线
移动,直到碰到障碍物就消失,子弹可以穿越树林和河流。敌方坦
克受到一颗子弹攻击会爆炸从而导致死亡,死亡后坦克消失。用户
方受到子弹攻击后会减少寿命,且受到四次攻击则死亡,此时如还
有敌方坦克存在,则用户方输掉本次游戏。
9. 爆炸:当子弹射击到坦克身上时,要产生爆炸效果。
10. 方向:坦克和子弹都有方向,可以选择上下左右四个方向,且子弹
的方向从属于坦克的方向。
具体设计
以下的论述均根据上面需求分析的顺序来安排:
1. 图形用户界面
图形用户界面要用到Java 课程里的第六章的知识,需要用到抽象窗
口工具集即AWT和Swing来设计实现,由于游戏需要有功能按键来控制
游戏的重新开始,退出,暂停
文档评论(0)