資源簡介
本資源是我跟著視頻教程敲的代碼,能運行,

代碼片段和文件信息
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
評論
共有 條評論