自己java设置背景做了个飞机游戏,背景闪的太快了,怎么办?

雷电游戏,实现了飞机碰撞,血块。。。 -
- ITeye技术网站
博客分类:
程序实现了缓冲图片消除闪烁,飞机碰撞,血块和血条的添加,,等等,功能不是很多,但是适合新手,欢迎下载其他类文件,
这里只是一个主类,下面有图片可以先看看界面!
压缩包在下面
package 飞机大战;
import java.awt.C
import java.awt.F
import java.awt.F
import java.awt.G
import java.awt.I
import java.awt.LayoutM
import java.awt.RenderingHints.K
import java.awt.event.KeyA
import java.awt.event.KeyE
import java.awt.event.KeyL
import java.awt.event.WindowA
import java.awt.event.WindowE
import java.io.F
import java.util.ArrayL
import java.util.L
import java.util.R
import javax.swing.ImageI
import javax.swing.JP
* 主类,线程 所有的事物重绘都在这个类,
* @author yan
public class WarUI extends Frame{
public static final int WIDTH=410;
public static final int HEIGHT=600;
public ImageI
public ImageIcon img2;
public static WarUI
public boolean p=
public static List&Plane& planes = new ArrayList&Plane&();// 敌人飞机容器
public static List&Bullet& bullets = new ArrayList&Bullet&();//子弹容器
public static List&Explode& explodes=new ArrayList&Explode&();//爆炸对象
public static int score=0;//计分
private Image offScreenImage =//用来实现使用双缓冲,画一个缓冲画布
Plane myplane=new Plane(150,500,warui,40,true);
private Random random=new Random();
private Blood b=new Blood();//创建血块对象
public void lauchFrame() {
setTitle("飞机大战");
setBounds(380, 100, WIDTH, HEIGHT);
// 匿名内部类,短,不涉及将来的扩展
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
//设置界面图标
Image a=this.getToolkit().getImage("背景\\Icon.png");
this.setIconImage(a);
img=new ImageIcon("背景\\back.jpg");//接口,getImage方法返回一个Image对象,repaint方法会调用paint方法
img2=new ImageIcon("背景\\back2.jpg");//接口,getImage方法返回一个Image对象,repaint方法会调用paint方法
setResizable(false);
setVisible(true);
MyKeyListener mkl=new MyKeyListener();
this.addKeyListener(mkl);
new Thread(new PaintThread()).start();
public static void main(String[] args) {
warui =new WarUI();
warui.lauchFrame();
* 消除闪烁,使用双缓冲
* 线程重画更加均匀,更能控制重化的速度。按键重画不能解决子弹自动飞行的问题;
* 每次重绘调用repaint方法时,必定会先调用update然后paint方法
public void update(Graphics g) {
if (offScreenImage == null) {
offScreenImage = this.createImage(WIDTH, HEIGHT);
// 拿到图片上的画笔
Graphics gOffScreen = offScreenImage.getGraphics();
Color c = gOffScreen.getColor();
gOffScreen.setColor(Color.blue);
gOffScreen.fillRect(0, 0, WIDTH,HEIGHT);
gOffScreen.setColor(c);
paint(gOffScreen);// 画在背后图片上
g.drawImage(offScreenImage, 0, 0, null);// 画在屏幕上
* 根据线程里面的repaint方法,不断重画面板,飞机,子弹,爆炸效果,等待都是在里面画出来的
public void paint(Graphics g){
// 根据不同的分数层切换背景图片
if(score&5000){
g.drawImage(img2.getImage(), 0, 0, warui);
g.drawImage(img.getImage(), 0, 0, warui);
if(!myplane.isLive()){
g.setColor(Color.red);
Font f = g.getFont();
g.setFont(new Font("宋体",Font.BOLD,60));
g.drawString("GAME
OVER!!!", 20, 300);
g.setFont(f);
g.drawString("复活按B,重新开始按C!!!", 22, 340);
myplane.draw(g);
myplane.move();
myplane.pengplane(planes);
myplane.eat(b);
* 添加 / 重绘敌人
if (planes.size()&3 ) {
for (int j = 0; j & 3; j++) {
Plane p = new Plane(false, warui);
planes.add(p);
if (planes.size() != 0) {
for (int i = 0; i & planes.size(); i++) {
Plane diren = planes.get(i);
diren.draw(g);
diren.dmove();
int r1=random.nextInt(200);
if(r1==20)
diren.dfire();
g.setColor(Color.BLUE);
g.drawString("子 弹 个
数 :"+bullets.size(), 20,50);
g.drawString("入侵敌机数:"+planes.size(), 20, 70);
g.drawString("获得分数:"+score, 20, 90);
g.drawString("A 开火,P 暂停", 20, 110);
g.drawString("C重新开始,B 复活:", 20, 130);
g.setColor(Color.BLACK);
for(int i=0;i&bullets.size();i++){
Bullet b1=bullets.get(i);
b1.draw(g);
b1.hitplane(planes);
b1.hitmyplane(myplane);
b1.move();
* 创建爆炸对象
for (int i = 0; i & explodes.size(); i++) {
Explode e = explodes.get(i);
e.draw(g);
* 血块添加
* 添加飞机吃血块的方法
if(myplane.life&30){
b.draw(g);
* // 内部类,,方便的访问包装类的方法,不方便公开,
* @author yan
private class PaintThread implements Runnable {
public void run() {
while (true) {
if(p==true){
repaint();
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
* 键盘事件,直接添加在面板上,然后对飞机的X,Y速度进行控制
* @author yan
class MyKeyListener extends KeyAdapter {
public void keyPressed(KeyEvent e) {
switch (e.getKeyCode()) {
case 37: // 左
myplane.left();
case 38:// 上
myplane.up();
case 39:// 右
myplane.right();
case 40:// 下
myplane.down();
case 65://A键
if(myplane.isLive()){
myplane.fire();
case 66://B建复活,清空子弹
myplane=new Plane(150,500,warui,40,true);
bullets.removeAll(bullets);
case 67://C建重新开始
myplane=new Plane(150,500,warui,40,true);
bullets.removeAll(bullets);
planes.removeAll(planes);
case 80://P键,暂停
if(p==false){
* 抬起键时,把速度为0
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() == 37 || e.getKeyCode() == 39) {
myplane.initXc();
} else if (e.getKeyCode() == 38 || e.getKeyCode() == 40) {
myplane.initYc();
下载次数: 6
浏览: 30110 次
来自: 长沙
cs6641468 写道同学, 建议还是看看官方文档。你肯定是 ...
cs6641468 写道同学, 建议还是看看官方文档。你肯定是 ...
同学, 建议还是看看官方文档。你肯定是百度找了一些抄来抄去过时 ...
push方法返回的不是移除去的对象吧? 移除的应该是前面和现在 ...查看: 1879|回复: 0
Java实现的一个打飞机的小游戏
Bullet.java
package GameSimport java.awt.Gimport java.awt.Iimport java.awt.Timport Tools.GameBimport View.StartFpublic class Bullet{ public static final int BULLET_SPEED=15; private int x,y; private boolean live= Image bullet=GameBox. public Bullet(int x,int y){
this.y=y; } public void draw(Graphics g){
if(!live){
g.drawImage(bullet,x,y,GameBox.BULLET_WIDTH,GameBox.BULLET_HEIGHT,null);
y=y-BULLET_SPEED;
if(y&-30){
} } public boolean isLive() {
} public void setLive(boolean live) {
this.live = } public int getX() {
} public int getY() {
}}复制代码
EnemyBullet.java
package GameSimport java.awt.Gimport java.awt.Iimport java.awt.Timport Tools.GameBpublic class EnemyBullet { private int x,y; private int bulletspeed=15; private boolean live= Image enemyplanebullet=GameBox.
public EnemyBullet(int x,int y){
this.y=y; } public void draw(Graphics g){
if(!live){
g.drawImage(enemyplanebullet,x,y,GameBox.ENEMYBULLET_WIDTH,GameBox.ENEMYBULLET_HEIGHT,null);
if(y&GameBox.GAME_HEIGHT+GameBox.ENEMYBULLET_HEIGHT){
} } public boolean isLive() {
} public void setLive(boolean live) {
this.live = } public int getX() {
} public int getY() {
} }复制代码
EnemyPlane.java
package GameSimport java.awt.Gimport java.awt.Iimport java.awt.Timport java.util.ArrayLimport java.util.Limport java.util.Rimport Tools.GameBimport View.StartFpublic class EnemyPlane { StartF private int xpeed=8; private int yspeed=5; private boolean live= private boolean fired= private int x,y=0; private static int i=0; private S I Random rand=new Random(); public EnemyPlane(StartFrame sf){
enemy=GameBox.enemy1;
enemy=GameBox.enemy2;
x=rand.nextInt(GameBox.GAME_WIDTH);
if(x%2==0){
dir=&left&;
dir=&right&;
if(x+GameBox.ENEMY_WIDTH&GameBox.GAME_WIDTH){
x=GameBox.GAME_WIDTH-GameBox.ENEMY_WIDTH;
} } public void draw(Graphics g){
g.drawImage(enemy,x,y,GameBox.ENEMY_WIDTH,GameBox.ENEMY_HEIGHT,null);
} private void move(){
int i=rand.nextInt(5)+2;
if(dir==&left&){
if(y&GameBox.GAME_HEIGHT+GameBox.ENEMY_HEIGHT){
dir=&right&;
if(x+GameBox.ENEMY_WIDTH&GameBox.GAME_WIDTH){
x=GameBox.GAME_WIDTH-GameBox.ENEMY_WIDTH;
dir=&left&;
} public int getX() {
} public int getY() {
} public boolean isLive() {
} public void setLive(boolean live) {
this.live = } public int getXpeed() {
} public void setXpeed(int xpeed) {
this.xpeed = } public int getYspeed() {
} public void setYspeed(int yspeed) {
this.yspeed = } public boolean isFired() {
} public void setFired(boolean fired) {
this.fired = }}复制代码
Explode.java ~ 724B
package GameSimport java.awt.Gimport java.awt.Iimport java.awt.Timport Tools.GameBpublic class Explode { private int x,y; private boolean live=
Image Explode1=GameBox.Explode1; public Explode(int x,int y){
this.y=y; } public void draw(Graphics g){
if(!live){
g.drawImage(Explode1,x,y,GameBox.EXPLODE1_WIDTH,GameBox.EXPLODE1_HEIGHT,null);
if(count==8){
} } public boolean isLive() {
} public void setLive(boolean live) {
this.live = } public int getCount() {
} public void setCount(int count) {
this.count = }}复制代码
[文件] MyPlane.java ~ 2KB
package GameSimport Tools.GameBimport View.StartFimport java.awt.Gimport java.awt.Iimport java.awt.Timport java.awt.event.KeyEimport javax.swing.ImageIpublic class MyPlane { private int x,y; private static I private B private boolean dl=false,du=false,dr=false,dd= public static final int MYPLANE_XSPEED=10; public static final int MYPLANE_YSPEED=10; private boolean live= public MyPlane(int x,int y){
this.y=y; } public void draw(Graphics g){
if(!live){
g.drawImage(GameBox.plane,x,y,GameBox.PLANE_WIDTH,GameBox.PLANE_HEIGHT,null);
public void keyPressed(KeyEvent e) {
int key=e.getKeyCode();
switch(key){
case KeyEvent.VK_UP:
case KeyEvent.VK_DOWN:
case KeyEvent.VK_LEFT:
case KeyEvent.VK_RIGHT:
} } public void keyReleased(KeyEvent e) {
int key=e.getKeyCode();
switch(key){
case KeyEvent.VK_UP:
case KeyEvent.VK_DOWN:
case KeyEvent.VK_LEFT:
case KeyEvent.VK_RIGHT:
} } private void move(){
if(du&&!dl&&!dd&&!dr){
y=y-MYPLANE_YSPEED;//上
}else if(dd&&!du&&!dl&&!dr){
y=y+MYPLANE_YSPEED;//下
}else if(!dd&&!du&&dl&&!dr){
x=x-MYPLANE_XSPEED;//左
}else if(!dd&&!du&&!dl&&dr){
x=x+MYPLANE_XSPEED;//右
}else if(!dd&&du&&dl&&!dr){
y=y-MYPLANE_YSPEED;//左上
x=x-MYPLANE_XSPEED;
}else if(du&&!dl&&!dd&&dr){
y=y-MYPLANE_YSPEED;//右上
x=x+MYPLANE_XSPEED;
}else if(dd&&!du&&dl&&!dr){
x=x-MYPLANE_XSPEED;//左下
y=y+MYPLANE_YSPEED;
}else if(dd&&!du&&!dl&&dr){
x=x+MYPLANE_XSPEED;//右下
y=y+MYPLANE_YSPEED;
if(x+GameBox.PLANE_WIDTH&GameBox.GAME_WIDTH){
x=GameBox.GAME_WIDTH-GameBox.PLANE_WIDTH;
if(y+GameBox.PLANE_HEIGHT*2&GameBox.GAME_HEIGHT){
y=GameBox.GAME_HEIGHT-GameBox.PLANE_HEIGHT*2;
} } public int getX() {
} public int getY() {
} public boolean isLive() {
} public void setLive(boolean live) {
this.live = }}复制代码
GameBox.java
package Timport java.awt.Fimport java.awt.Iimport java.awt.Timport java.util.ArrayLimport java.util.Limport GameSubstance.EnemyBimport GameSubstance.Epublic class GameBox { public static int GAME_WIDTH=800; public static int GAME_HEIGHT=600; public static Font f1=new Font(&oúì?&,3,20); public static Toolkit tk = Toolkit.getDefaultToolkit(); public static Image backgroundimage=tk.createImage(&images\\±3?°.jpg&); public static Image plane=tk.createImage(&images\\?ò·?·é?ú.gif&); public static int PLANE_WIDTH=30; public static int PLANE_HEIGHT=30; public static Image Explode1=tk.createImage(&images/±??¨.gif&); public static int EXPLODE1_WIDTH=30; public static int EXPLODE1_HEIGHT=30; public static Image bullet=tk.createImage(&images\\×óμˉ.gif&); public static int BULLET_WIDTH=18; public static int BULLET_HEIGHT=35; public static Image enemy1=tk.createImage(&images\\μD?ú1.gif&); public static Image enemy2=tk.createImage(&images\\μD?ú2.gif&); public static int ENEMY_WIDTH=30; public static int ENEMY_HEIGHT=30; public static Image enemybullet=tk.createImage(&images\\·??-μ?×óμˉ.gif&); public static int ENEMYBULLET_WIDTH=15; public static int ENEMYBULLET_HEIGHT=30;}复制代码
StartFrame.java
package Vimport GameSubstance.*;import Tools.*;import java.awt.Cimport java.awt.Fimport java.awt.Gimport java.awt.Iimport java.awt.Timport java.awt.event.KeyAimport java.awt.event.KeyEimport java.awt.image.ImageOimport java.util.ArrayLimport java.util.Limport java.util.Rimport javax.swing.ImageIimport javax.swing.JFimport javax.swing.JPpublic class StartFrame extends JFrame implements Runnable{ //游戏组件 Image bk=GameBox. MyP List&EnemyPlane& enemyplanelist=new ArrayList&EnemyPlane&(); private int count=0; private float sourse=0; List&Bullet& bulletlist=new ArrayList&Bullet&(); List&Explode& explodelist=new ArrayList&Explode&(); List&EnemyBullet& enemybulletlist=new ArrayList&EnemyBullet&(); JP public static void main(String[] args) {
new Thread(new StartFrame()).start(); } public StartFrame(){
this.setSize(GameBox.GAME_WIDTH,GameBox.GAME_HEIGHT);
//窗口居中
int width=Toolkit.getDefaultToolkit().getScreenSize().
int height=Toolkit.getDefaultToolkit().getScreenSize().
setLocation(width/2-GameBox.GAME_WIDTH/2, height/2-GameBox.GAME_HEIGHT/2);
setResizable(false);
myplane=new MyPlane(GameBox.GAME_WIDTH/2,GameBox.GAME_HEIGHT-GameBox.PLANE_HEIGHT*2);
new Thread(new AddEnemy()).start();
this.addKeyListener(new KeyMonitor());
this.add(new GameJPanel());
setTitle(&打飞机小游戏&);
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
setVisible(true); } @Override public void run() {
while(true){
repaint();
Random rand=new Random();
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
} } private class KeyMonitor extends KeyAdapter {
public void keyReleased(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_F2){
myplane.setLive(true);
myplane.keyReleased(e);
public void keyPressed(KeyEvent e) {
myplane.keyPressed(e);
} } private class AddEnemy implements Runnable{
public void run() {
while(true){
Thread.sleep(500);
addEnemyPlane();
} catch (InterruptedException e) {
e.printStackTrace();
private void addEnemyPlane(){
EnemyPlane enemyplane=new EnemyPlane(StartFrame.this);
enemybulletlist.add(new EnemyBullet(enemyplane.getX(),enemyplane.getY()));
enemyplanelist.add(enemyplane);
} } private class GameJPanel extends JPanel{
public void paint(Graphics g){
super.paint(g);
g.drawImage(bk,0,0,GameBox.GAME_WIDTH,GameBox.GAME_HEIGHT,null);
myplane.draw(g);
if (count==0){
if(myplane.isLive()){
createBullet();
for(int i=0;i&bulletlist.size();i++){
bulletlist.remove(i);
if(count==2){
for(int i=0;i&bulletlist.size();i++){
Bullet bullet=bulletlist.get(i);
bullet.draw(g);
clearBullet();
for(int i=0;i&enemyplanelist.size();i++){
EnemyPlane enemyplane=enemyplanelist.get(i);
enemyplane.draw(g);
clearEnemyplane();
Random rand=new Random();
if(rand.nextInt(100)&93&&enemyplane.isLive()){
enemybulletlist.add(new EnemyBullet(enemyplane.getX(),enemyplane.getY()));
//如果敌机面对我方飞机时发射一枚子弹
if(enemyplane.getX()&=myplane.getX()&&enemyplane.getX()&=myplane.getX()+GameBox.PLANE_WIDTH&&enemyplane.isFired()&&enemyplane.isLive()){
enemybulletlist.add(new EnemyBullet(enemyplane.getX(),enemyplane.getY()));
enemyplane.setFired(false);
for(int i=0;i&enemybulletlist.size();i++){
EnemyBullet eb=enemybulletlist.get(i);
eb.draw(g);
clearEnemyBullet();
hitPlane();//攻击敌机
impactMyplane();//敌机与我方飞机发生碰撞
if(enemybulletlist.size()&=1)hitMyplane();//
for(int i=0;i&explodelist.size();i++){
Explode exp=explodelist.get(i);
exp.draw(g);
exp.setCount(exp.getCount()+1);
clearExplode();
g.setColor(Color.RED);
// g.setFont(GameBox.f1);//设置字体之后加载窗口会卡2秒钟
if(sourse!=0){
g.drawString(&您的得分:&+(int)sourse+&0&, 50, 50);
g.drawString(&您的得分:0&, 50, 50);
private void clearEnemyBullet() {
for(int i=0;i&enemybulletlist.size();i++){
if(!(enemybulletlist.get(i).isLive())){
enemybulletlist.remove(i);
private void createBullet(){
Bullet bullet=new Bullet((myplane.getX()+5),(myplane.getY()-30));
bulletlist.add(bullet);
private void clearBullet(){
for(int i=0;i&bulletlist.size();i++){
if(!(bulletlist.get(i).isLive())){
bulletlist.remove(i);
private void clearEnemyplane() {
for(int i=0;i&enemyplanelist.size();i++){
if(!(enemyplanelist.get(i).isLive())){
enemyplanelist.remove(i);
private void clearExplode() {
for(int i=0;i&explodelist.size();i++){
if(!(explodelist.get(i).isLive())){
explodelist.remove(i);
private void hitPlane(){
int bx,ex,by,
for(int i=0;i&bulletlist.size();i++){
Bullet bullet=bulletlist.get(i);
bx=bullet.getX();
by=bullet.getY();
for(int j=0;j&enemyplanelist.size();j++){
EnemyPlane enemyplane=enemyplanelist.get(j);
ex=enemyplane.getX();
ey=enemyplane.getY();
if(bx&=ex&&bx&=ex+GameBox.ENEMY_WIDTH&&by&=ey&&by&=ey+GameBox.ENEMY_HEIGHT&&enemyplane.isLive()&&bullet.isLive()){
bullet.setLive(false);
enemyplane.setLive(false);
explodelist.add(new Explode(bx,by));
sourse=sourse+1.f;//防止CE恶意修改分数(我的QQ号码)
private void impactMyplane(){
int mx,my,ex,
mx=myplane.getX();
my=myplane.getY();
for(int i=0;i&enemyplanelist.size();i++){
EnemyPlane enemyplane=enemyplanelist.get(i);
ex=enemyplane.getX();
ey=enemyplane.getY();
if(mx&=ex&&mx&=ex+GameBox.ENEMY_WIDTH&&my&=ey&&my&=ey+GameBox.ENEMY_HEIGHT&&myplane.isLive()&&enemyplane.isLive()){
myplane.setLive(false);
enemyplane.setLive(false);
explodelist.add(new Explode(mx,my));
explodelist.add(new Explode(ex,ey));
private void hitMyplane() {
int mx,my,ex,
mx=myplane.getX();
my=myplane.getY();
for(int i=0;i&enemyplanelist.size();i++){
EnemyBullet eb=enemybulletlist.get(i);
ex=eb.getX();
ey=eb.getY();
if(ex+GameBox.ENEMYBULLET_WIDTH&=mx&&ex+GameBox.ENEMYBULLET_WIDTH&=mx+GameBox.PLANE_WIDTH&&ey+GameBox.ENEMYBULLET_HEIGHT&=my&&ey+GameBox.ENEMYBULLET_HEIGHT&=my+GameBox.PLANE_HEIGHT&&myplane.isLive()&&eb.isLive()){
myplane.setLive(false);
eb.setLive(false);
explodelist.add(new Explode(mx,my));
} }}复制代码
[图片] 敌机1.gif
[图片] 敌机2.gif
[图片] 愤怒的子弹.gif
[图片] 子弹.gif
上一篇:下一篇:网站已改版,请使用新地址访问:
proj 一个炫酷的飞机大战java游戏,很好玩的,很酷炫 用了 的图形界面 Games
256万源代码下载-
&文件名称: proj& & [
& & & & &&]
&&所属分类:
&&开发工具: Java
&&文件大小: 3435 KB
&&上传时间:
&&下载次数: 0
&&提 供 者:
&详细说明:一个炫酷的飞机大战java游戏,很好玩的,很酷炫的,用了很好的图形界面-A World War II aircraft cool java game, very fun, very cool, with a nice graphical interface
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&proj\.DS_Store&&....\assets\.DS_Store&&....\......\img\ammunition.png&&....\......\...\ammunitiontemp.png&&....\......\...\background1.png&&....\......\...\background2.png&&....\......\...\background3.png&&....\......\...\background4.png&&....\......\...\background5.png&&....\......\...\bg.png&&....\......\...\BlueBulletExplo1.png&&....\......\...\BlueBulletExplo2.png&&....\......\...\BlueBulletExplo3.png&&....\......\...\BlueBulletExplo4.png&&....\......\...\BlueBulletExplo5.png&&....\......\...\BlueBulletExplo6.png&&....\......\...\bulletDown.png&&....\......\...\bulletShipdown.png&&....\......\...\bulletShipup.png&&....\......\...\bullettest.png&&....\......\...\bulletUp.png&&....\......\...\button.jpg&&....\......\...\button2.jpg&&....\......\...\distance.png&&....\......\...\enemyShip.png&&....\......\...\enemyShip1.png&&....\......\...\enemyShip2.png&&....\......\...\enemyShip3.png&&....\......\...\enemyShip4.png&&....\......\...\enemyShip5.png&&....\......\...\enemyShip7.png&&....\......\...\enemyShipBoss.png&&....\......\...\explosion00.png&&....\......\...\Explo__000.png&&....\......\...\Explo__001.png&&....\......\...\Explo__002.png&&....\......\...\Explo__003.png&&....\......\...\Explo__004.png&&....\......\...\Explo__005.png&&....\......\...\Explo__006.png&&....\......\...\Explo__007.png&&....\......\...\Explo__008.png&&....\......\...\Explo__009.png&&....\......\...\Explo__010.png&&....\......\...\gameover.jpg&&....\......\...\healbar.png&&....\......\...\healthbar1.png&&....\......\...\laserGreenShot.png&&....\......\...\medicine.png&&....\......\...\medicinetemp.png&&....\......\...\player copy.png&&....\......\...\player.png&&....\......\...\playerShip1.png&&....\......\...\playerShip2.png&&....\......\...\playerShip3.png&&....\......\...\right.jpg&&....\......\...\starBackground.png&&....\......\...\ult.png&&....\BattleField$draw.class&&....\BattleField$effectsTimer.class&&....\BattleField$enemyBulletCreation.class&&....\BattleField$enemyCreation.class&&....\BattleField$KeyBoardListener.class&&....\BattleField$movingBackground.class&&....\BattleField$playerBulletCreation.class&&....\BattleField.class&&....\BattleField.java&&....\Bullet.class&&....\Bullet.java&&....\clean.bat&&....\compile.bat&&....\constant.class&&....\constant.java&&....\Effects.class&&....\Effects.java&&....\Enemy.class&&....\Enemy.java&&....\enemyInfo.class&&....\enemyInfo.java&&....\Explosions.class&&....\Explosions.java&&....\Explosiontest.class&&....\Explosiontest.java&&....\Game.class&&....\Game.java&&....\GameoverPanel$1.class&&....\GameoverPanel.class&&....\GameoverPanel.java&&....\OWNERTYPE.class&&....\OWNERTYPE.java&&....\Player.class&&....\Player.java&&....\README.MD&&....\SpaceShip.class&&....\SpaceShip.java&&....\Special.class&&....\Special.java&&....\SPECIALTYPE.class&&....\SPECIALTYPE.java&&....\Sprite.class
&输入关键字,在本站256万海量源码库中尽情搜索:

我要回帖

更多关于 java设置背景 的文章

 

随机推荐