要完成java大作业,不知为何就想做一个坦克大战。
功能是逐步加上去的。一开始就是几个IconImage在一个Frame中移动,后来逐渐加入线程、碰撞检测、导弹发射、击中检测、背景音乐、音效、血量控制、音乐开关、起始控制面板、墙壁。。。等等等等。。。
由于一开始没有规划好,没有做好类的层次设计,导致想要继承时发现出了问题,所以我方坦克和敌方坦克出现了一定的代码重写。最后懒得改了,所以这个遗憾就留下了。
【功能分配】
TankClient.java:客户端主界面,继承 JFrame
InitOptionPanel.java:游戏启动时的选择面板,选择自己起始血量、敌方坦克数量、音乐开关、音效开关。
BattleFieldCanvas.java:对所有类的draw方法进行调用,用于重绘界面。其中也涉及胜利和失败时的音效控制。
MyTank.java:我方坦克类
EnemyTank.java:敌方坦克类
Wall.java:墙壁类
Missile.java:炮弹类
下面贴代码:
TankClient.java
InitOptionPanel.java
BattleFieldCanvas.java
MyTank.java
EnemyTank.java
Missile.java
Wall.java