• 大小: 19KB
    文件类型: .zip
    金币: 2
    下载: 0 次
    发布日期: 2024-01-20
  • 语言: 其他
  • 标签: java  坦克游戏  

资源简介

本资源是我跟着视频教程敲的代码,能运行,

资源截图

代码片段和文件信息

package 坦克大战游戏包9_3超级升级版;
 
import javax.swing.*;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Vector;
import javax.swing.JPanel;




/*E键退出
 * 
 *  
 *  1.0 出来坦克
 * 2.1 能够上下左右移动
 * 2.2 并且坦克能变化炮筒方向
 * 2.3 将合适的类放入合适的java文件中,简化代码 
 * 3.1 增加子弹线程
 * 4.1 坦克子弹能连续发射20颗
 * 4.2 将敌人坦克Bad 改为EnemyTank
 * 4.2 将敌人坦克list  改为 ets
 * 5.1 标识子弹消灭了的子弹和坦克, 并爆炸 * 
 * 6.1 增加击中后的爆炸效果
 * 7.1 敌人坦克能动 和开火 将EnemyTank升级为线程类 * 
 *     MyPanel1() 里 先准备3张图片用于显示爆炸效果
 *     定义bomb类
 *     在击中敌人坦克时候, 既是在hitTank()里 , 把炸弹放入Vector(bomb)
 *     绘制爆炸效果 paint()里 * 
 * 8.1 控制敌人坦克在规定范围移动
 *     (敌人坦克坐标的移动范围是(0-6000-800)
 * 9.1 让敌人能发射子弹
 *     改动我的子弹夹ss为myclip
 *     改动为 enemytankboxs
 *     改动为  enemytank * 
 * 9.2 敌人坦克能打我 
 *     将爆炸图片用try包围 引入包io ,失败 若要研究 见9——2
 * 9.4 升级1.防止敌人坦克重叠运动 略
 *        2.可以分游戏等级
 *           做一个开始面板 只是用于提示
 *           字体闪烁(线程)
 *        3.可以暂停和继续
 *           当暂停 子弹 坦克速度为0  坦克方向不变
 *        4.可以记录玩家的成绩显示消灭敌人坦克的数量
 *           文件流 
 *           单写一个记录类 对玩家信息的记录
 *        5.播放声音特效
 * 
 * 
 * 
 */
/////类 坦克游戏3_1 ///////////////////////////////////////////////////////////////////

public class 坦克游戏9_3  extends Jframe  implements ActionListener
{





private static final long serialVersionUID = 1L;
    
MyPanel1 mp1;
MyStartPanel msp;
///做成菜单
JMenuBar jmb;
JMenu jm1;
JMenuItem jmi1;

    
public static void main(String[] args) 
{
new 坦克游戏9_3();
}

//构造函数
public 坦克游戏9_3()
{
// mp1=new MyPanel1();
// //启动mp1线程 为了用于子弹的工作
// Thread tt = new Thread(mp1);
// tt.start();
//
// this.add(mp1);




msp = new MyStartPanel();

//创建菜单
JMenuBar jmb= new JMenuBar();
JMenu jm1 = new JMenu(“游戏(G)“) ;
//sz设置快捷方式  助记符
jm1.setMnemonic(‘G‘);

JMenuItem jmi1 = new JMenuItem(“开始新游戏(N)“);
jmi1.setMnemonic(‘N‘);

//d对jmi1jin进行响应
jmi1.addActionListener(this);
jmi1.setActionCommand(“newgame“);
jmb.add(jm1);

jm1.add(jmi1);

this.setJMenuBar(jmb);

this.add(msp);

this.setSize(800 600);
this.setVisible(true);
this.settitle(“坦克游戏9_3 升级版“);
this.addKeyListener(mp1);
Thread t = new Thread(msp);
t.start();


}

public void actionPerformed(ActionEvent e) 
{
 
//d对用户不同的点击响应不同的操作
if(e.getActionCommand().equals(“newgame“))
{

//创建战场
 
// 先删除旧的面板
  this.remove(msp);
//  if(mp1.isEnabled())
//  {
//  this.remove(mp1);
//   
//  }
 
mp1=new MyPanel1();
// //启动mp1线程 为了用于子弹的工作
Thread tt = new Thread(mp1);
tt.start();
 
  this.add(mp1);
  this.addKeyListener(mp1);///??
  //刷新JFraame  xians显示 
  this.setVisible(true);


}


}

  

}

//类 开始面板就是一个提示作用/////////////////////////////////////

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\
     文件         597  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\Bomb.class
     文件        1560  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\EnemyTank.class
     文件        1557  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\Hero.class
     文件        7006  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\MyPanel1.class
     文件        1327  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\MyStartPanel.class
     文件         327  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\Recorder.class
     文件        1026  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\Shot.class
     文件        1372  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\Tank.class
     文件        2500  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\坦克游戏9_3.class
     文件       16381  2014-07-15 21:57  坦克大战游戏包9_3超级升级版\坦克游戏9_3.java
     文件         441  2014-12-03 17:10  坦克大战游戏包9_3超级升级版\成员.class
     文件        6379  2014-07-15 21:58  坦克大战游戏包9_3超级升级版\成员.java

评论

共有 条评论