坦克大战教程.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA程序开发课程设计 课程大作业 专 业: 软 件 工 程 班 级: 14软工2 学 号: 1422130236 姓 名: 张敏慧 项目名称:坦克大战 需求分析: 基本功能: 我方坦克能上下移动 敌方坦克能自由移动 我方坦克能开火 敌方坦克能自由开火 子弹打中我方,会减血,我方打中敌方,敌死。敌打敌不会受伤 有血条,主界面 扩展功能 用图形来表示坦克和炮弹 用图形来表示中子弹后的爆炸效果 地图上存在金属墙,我方坦克和子弹不能穿过 地图上存在曹村,我方和敌方坦克能够自由穿过,子弹也一样 地图上会随机出现加血包 我方坦克遇到加血包,会增加生命 游戏开始时,会启动背景音乐 我方坦克死亡时,提示游戏结束 二、系统设计: 1. BgMusic (1)主要功能:添加背景音乐 TankMap类通过调用该类,并读取BgMusic包下面的背景音乐文件 (2)成员属性: 1)filename,用于记录读取到的文件名,并处理 2)nBytesRead,这是缓存,用于读取音乐文件,缓存下来 (3)成员方法: 1)run,播放背景音乐 构造方法BgMusic,将读取到的文件名,存储到成员属性filename中 2. Blood (1)主要功能:地图中添加血包 (2)成员属性: 1)x,y,width,height,血包的位置以及宽高 2)rpos_x,rpos_y,用于记录血包移动后的位置 3)tm,调用TankMap类,并在地图中放血包 4)live,血包的存活,被坦克吃了就消失 5) blood,用于记录血包的存活 6)step,血包的步长 7)stepMove,血包走过总的步长 (3)成员方法: 1)Blood,构造方法,将血包放到地图中 draw,画血包 move,血包的移动 getRect,获取血包的位置 3. Tank (1)主要功能:地图中添加我方坦克 (2)成员属性: 1)WIDTH,HEIGHT,xspeed,yspeed,坦克的宽高和x,y上的移动速度 2)x,y,direction,我方坦克出现的初始位置和初始状态 3)tm,调用TankMap类,并在地图中放坦克 4)isLive,我方坦克是否存活 5) isgood,坦克属于哪一方 6) life,我方坦克的初始生命值 7) step,使用Blood类,血包随机出现 8)upimage,rightimage,downimage,leftimage,oldimage,存放坦克图片 (3)成员方法: 1)draw,绘制坦克 2)move,根据移动方向,移动坦克,不允许坦克移除地图 3)checkDirection,确定用户单击的方向键,修正坦克即将移动方向 4)fire,发射子弹 5)getRec,返回坦克当前位置,便于判断是否与敌方坦克或子弹重叠 6)stay,坦克撞墙的处理 7)eat,我方坦克吃血包 4.EnemyTank (1)主要功能:地图中添加敌方坦克 (2)成员属性: 1)WIDTH,HEIGHT,xspeed,yspeed,坦克的宽高和x,y上的移动速度 2)x,y,direction,我方坦克出现的初始位置和初始状态 3)tm,调用TankMap类,并在地图中放坦克 4)islive,我方坦克是否存活 5)enemytank,存放坦克图片 (3)成员方法: 1)draw,绘制坦克 2)move,根据移动方向,移动坦克,不允许坦克移除地图 3)fire,发射子弹 4.Explor (1)主要功能:子弹打中坦克,发生爆炸效果 (2)成员属性: 1)x,y,坦克出现的位置 2)tm,调用TankMap类,并在地图中放爆炸 3)islive,我方坦克是否存活 (3)成员方法: 1)draw,绘制爆炸 2)Explor,爆炸的构造方法 5.Help (1)主要功能:给用户游戏帮助 (2)成员属性: 1)help,将帮助的文字存放在字符串中 (3)成员方法: 1)getHelpDialog,调用帮助 6.Shell (1)主要功能:设计子弹 (2)成员属性: 1)WIDTH,HEIGHT,xspeed,yspeed,子弹的宽高和x,y上的移动速度 2)x,y,direction,子弹出现的位置和方向 3)tm,调用TankMap类,并在地图中放子弹 4)isLive,子弹是否打中坦克 5)isgood,是否是我方 6)Image,加载子弹图片 (3)成员方法: 1)draw,绘制子弹 2)move,根据移动方向,移动坦克,得到

文档评论(0)

ddf55855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档