Java坦克大战设计报告(8)

时间:2025-04-20

图1-8 爆炸效果图

1.4.4添加背景音乐的方法

为了在应用程序中播放音乐,首先根据相应的音频文件创建一个File对象,例如:

File file=new File(“十年.Wav”);

然后,file对象调用toURL()方法返回一个URL对象,例如: URL url=file.toURL();

最后,使用Applet类的静态方法返回一个音频对象,例如: clip=Applet.newAudioClip(url);

1.4.5双人游戏实现的方法

SRen类是javax.swing包中JPamel类的子类,所创建的对象是一个面板,面板上有坦克大战的敌我双方坦克(此时我军坦克数量为2),和战场,以及我军消灭敌军数量的标识,标明SRen类的主要成员变量、方法以及和TankGames类之间组合关系的UML如图1-9所示。

图1-9 SRen类的UML图

以下是UML图中有关数据和方法的详细说明。 1、成员变量

(1)isZanT、isSounds都是boolean类型数据,分别确定是否游戏暂停,是否使用音效。

(2)word是WordMove类型数据,用于制造动态字。

(3)myts0life、myts1life都是int类型的数据,分别用来记录我方两辆坦克的生命值。 (4)myts0XM、myts1XM都是int类型的数据,分别来记录我方两辆坦克消灭敌军坦克数量。

(5)zd,zhd分别是ZDan和ZhaDan类型数据,在画板上定义子弹和炸弹。 (6)image1、imge2、imgae3都是Image类型数据,在击中坦克时,将这三幅图片画出来,制造爆炸效果。

(7)f是Font类型数据,用于定义游戏结束时动态字的字体。 2、方法

(1)SRen()构造方法,初始化定义的成员变量。

(2)paint(Graphics g)在画板上画坦克,画子弹,画炸弹等各种作战场面。 (3)addmytank()方法用来增加我军坦克,我军坦克的生命值是3,当我军生命值大于0时,每死一次就增加一辆我军坦克,直至我军坦克生命值为0。

(4)addEnemytank()方法是用来增加敌军坦克,敌军坦克默认情况下是20辆,而战场只允许敌军4辆坦克作战,所以每击毁敌军一辆坦克就会调用此方法增加一辆敌军坦克,直至敌军坦克数量小于或者等于4。 (5)zhanji()方法是用来记录我军击毁坦克数量。 (6)Bomp()方法是在击中坦克时画出爆炸效果。 (7)drawtank()用来在画板上画出敌我双方坦克。 (8)drawzd()用来在画板上画子弹。

(9)shotEnemytank()是在我军发射子弹时调用的,用户按下指定键就会激发此方法。

(10)shotmytank()是敌军发射子弹时调用此方法。 (11)isjizhong()是用来判断子弹是否击中坦克。

(12)GameOver()是在游戏结束时调用的,用来描述游戏结束。 因此mypanel创建的画板的效果如图1-10所示。

图1-10 SRen创建的画板

1.4.6游戏设置方法

FirstDialog是java.swing包中Dialog类的子类,它创建的是一个对话框,此对话框里面主要有选择按钮,滚动条,还有两个按钮。标明FirstDialog类的主要成员变量、方法以及和TankGames类之间组合关系的UML如图1-11所示。

Java坦克大战设计报告(8).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219