项目-坦克大战-设计报告

项目-坦克大战-设计报告

ID:40356603

大小:180.01 KB

页数:23页

时间:2019-07-31

项目-坦克大战-设计报告_第1页
项目-坦克大战-设计报告_第2页
项目-坦克大战-设计报告_第3页
项目-坦克大战-设计报告_第4页
项目-坦克大战-设计报告_第5页
资源描述:

《项目-坦克大战-设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《JAVA程序开发课程设计》项目设计项目名称:TankWar软件专业:软件工程班级:13软工1班姓名:毛晨光学号:1322120124一、需求分析:基本功能:1.玩家控制的坦克能够四处移动并且打击敌方坦克;2.敌方坦克能够随机四处移动并且打击玩家控制的坦克;3.玩家控制的坦克拥有血量,而敌方坦克没有;4.坦克受到攻击时血条会缩短;5.敌方坦克被消灭完之后,提示游戏胜利;6.用户方坦克被消灭后提示游戏结束;特色功能:1.坦克具有图片,不单单只是个圈圈。2.增加了血包功能,地图上会随机出现一个血包,我方坦克开过会增加血量。二、系统设计:1.Tank

2、Map类:实现游戏界面地图的初始化。2.PainTread类:绘制和重绘功能。3.DirectionHandler:监听用户的键盘输入。4.Tank类:实现坦克的初始化,绘制,移动,发射等功能。5.EnemyTank:实现敌方坦克的初始化,绘制,移动,发射等功能。6.Shell类:实现炮弹的初始化,绘制,移动,攻击功能。7.Explor类:实现爆炸的初始化。绘制功能,爆炸效果由绘制半径从小到大再到小的圆实现。8.Direction类:包含枚举。9.Blood类:用于实现血包的功能。三、功能实现。一.绘制地图功能:publicclassTankM

3、apextendsFrame{//定义地图的尺寸。publicstaticfinalintMAPWIDTH=800;publicstaticfinalintMAPHEIGHT=600;//我方坦克Tankt=null;//定义随机出现的血包Randomr=newRandom();ImagebufferImage=null;publicstaticjava.util.Listshells=newArrayList();//地方坦克集合publicstaticjava.util.List->enem

4、ys=newArrayList();publicstaticjava.util.Listbloods=newArrayList();//爆炸集合public.static.java.util.Listexplors=newjava.util.ArrayList();//敌方坦克数量默认10个publicintenemyCount=5;//主方法publicstaticvoidmain(String[]args){TankMaptv=newTankMap();tv.

5、init();}publicvoiddrawImage(){}//地图初始化方法publicvoidinit(){//初始化地图this.setSize(MAPWIDTH,MAPHEIGHT);this.setTitle("TankWar");this.setVisible(true);//添加键盘监听器this.addKeyListener(newDirectionHandler());//添加穿口关闭监听器this.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(Wi

6、ndowEventarg0){System.exit(0);}});//初始化我方坦克t=newTank(this);//初始化敌方坦克for(inti=0;i

7、EEN);g.fillRect(0,0,MAPWIDTH,MAPHEIGHT);g.setColor(Color.RED);g.drawString("当前炮弹数目:"+shells.size(),20,40);g.drawString("生命值:",20,60);g.fillRect(65,55,t.getLife(),5);g.setColor(c);//画坦克t.draw(g);if(r.nextInt(10)==9&&bloods.size()==0)bloods.add(newBlood());if(r.nextInt(60)==7&

8、&bloods.size()==1)bloods.remove(0);for(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。