⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loadgameresource.java

📁 经典FC游戏《超惑星战记》的J2ME版本!!功能基本上都实现了
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/**
 * <p>Title: Transpanzer</p>
 * <p>Description:
 * You cannot remove this copyright and notice.
 * You cannot use this file any part without the express permission of the author.
 * All Rights Reserved</p>
 * @author Jjyo
 * @email jjyo@163.com
 * @version 1.0.0
 */

public class LoadGameResource {

	public Maps map;//地图
	public TankGameCanvas gameCanvas;
	public GameManage gm;
	public static int zoom;
	//Image
	public ImageManage imControlPanl;
	public ImageManage imMenu;
	public ImageManage imMap;
	public ImageManage imTank;
	public ImageManage imTane;
	public ImageManage imKane;
	public ImageManage imWheel;
	public ImageManage imBullet8;
	public ImageManage imBullet24;
	public ImageManage imBomb;
	public ImageManage imFont;
	public ImageManage imGoods;
	public ImageManage imBeam;
	public ImageManage imEnemySprite16;
	public ImageManage imEnemySprite32;
	public ImageManage imCorps;
	public ImageManage imTankBomb;
	public ImageManage imBeamName;
	public ImageManage imTitle;
	
	//精灵
	public FSprite choose;
	public FSprite poit;
	public TankSprite tankSprite;
	public StaticTankSprite staticTankSprite;
	public TankBullet[] tankBullet;
	public EnemyBullet[] enemyBullet;
	public Bomb[] bomb;
	public Goods goods[];
	public Beam beam;
	public TankBomb tankBomb;
	public Corps corps[];
	public StaticGoods staticGoods[];
	public EnemySprite16 enemySprite16[];
	public EnemySprite32 enemySprite32[];
	//声音
	public AudioPlayer menuAudio;
	public AudioPlayer bgAudio;
	
	public char mapData[][]=null; //地图组据
	public int [] mapArray;
	//构造
	public LoadGameResource(GameManage gm){
		this.gm=gm;
		System.out.println("Loading Successfull...");
		//图片
		imControlPanl=new ImageManage("control.png");
		imMenu=new ImageManage("menu.png");
		imTitle=new ImageManage("title.png");
		imTank=new ImageManage("Tank.png");
		imTane=new ImageManage("tane.png");
		imKane=new ImageManage("Kane.png");
		imWheel=new ImageManage("Wheel.png");
		imBullet8=new ImageManage("bullet8.png");
		imBullet24=new ImageManage("bullet24.png");
		imBomb=new ImageManage("bomb.png");
		imFont=new ImageManage("bitmapFont.png");
		imGoods=new ImageManage("goods.png");
		imBeam=new ImageManage("beam.png");
		imTankBomb=new ImageManage("tankBomb.png");
		imBeamName=new ImageManage("beamName.png");
		imEnemySprite16=new ImageManage("EnemySprite16.png");
		imEnemySprite32=new ImageManage("EnemySprite32.png");
		//精灵
		choose=new Choose(Choose.WHELL);
		poit=new Choose(Choose.POIT);
		tankSprite=new TankSprite(gm,map);
		staticTankSprite=new StaticTankSprite();
		
		//声音
		audioMenu();
		
		//主角子弹 数量3
		tankBullet=new TankBullet[3];		//子弹 数量3
		for(int i=tankBullet.length-1;i>=0;i--){
			tankBullet[i]=new TankBullet(gm);
		}
		//敌方子弹 数量3
		enemyBullet=new EnemyBullet[3];
		for(int i=enemyBullet.length-1;i>=0;i--){
			enemyBullet[i]=new EnemyBullet(gm);
		}
		//炸弹效果 数量6
		bomb=new Bomb[6];
		for(int i=bomb.length-1;i>=0;i--){
			bomb[i]=new Bomb();
		}
		
		//动态物品 数量3
		goods=new Goods[3];
		for(int i=goods.length-1;i>=0;i--){
			goods[i]=new Goods(gm);
		}
		//Tank 装置
		beam=new Beam(gm);
		
		//Tank Bomb
		tankBomb=new TankBomb(gm);
	}

	public void level(int mapIndex){
		switch(mapIndex){
			case 1:		//BOSS 1
			imMap=null;
			mapData=null;
			map=null;
			imMap=new ImageManage("cave1.png");	//地图图片
			mapData=Boss.bossData;		//地图数组
			map=new Maps(imMap,mapData,15,20,16,"BOSS");	//调用
			if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			break;
		  case 11:	//Area 1-1
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("area1.png");	//地图图片
			  mapData=Area1.mapData;		//地图数组
			  map=new Maps(imMap,mapData,16,35,16,"area1_1");	//调用
			  Maps.x=0;			//初始化地图位置
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  a11();
			  break;
		  case 12:	//Area 1-2
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("area1.png");	//地图图片
			  mapData=Area1_2.mapData;		//地图数组
			  map=new Maps(imMap,mapData,112,36,16,"area1_2");	//调用
			  Maps.x=0;			//初始化地图位置
			  Maps.y=300;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  a12();
			  break;
			  
		  case 13:	//Area 1-3
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("area1.png");	//地图图片
			  mapData=Area1_3.mapData;		//地图数组
			  map=new Maps(imMap,mapData,16,30,16,"area1_3");	//调用
			  Maps.x=0;			//初始化地图位置
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  a13();
			  break;
		  case 14:	//Area 1-4
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("area1.png");	//地图图片
			  mapData=Area1_4.mapData;		//地图数组
			  map=new Maps(imMap,mapData,108,50,16,"area1_4");	//调用
			  Maps.x=0;			//初始化地图位置
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  a14();
			  break;
			 
		  case 15: //Area 1-5
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("area1.png");	//地图图片
			  mapData=Area1_5.mapData;	//地图数组
			  map=new Maps(imMap,mapData,16,31,16,"area1_5");	//调用
			  Maps.x=0;			//初始化地图位置
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  a15();
			  break;
			 
		  case 16:	 // cave1-1;
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("cave1.png");	//地图图片
			  mapData=Cave1_1.mapData;	//地图数组
			  map=new Maps(imMap,mapData,32,32,16,"cave1_1");	//调用
			  Maps.x=272;			//初始化地图位置
			  Maps.y=192;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  c11();
			  break;
			  
		  case 17:	// cave1-2
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("cave1.png");	//地图图片
			  mapData=Cave1_2.mapData;
			  map=new Maps(imMap,mapData,48,45,16,"cave1_2");
			  Maps.x=0;
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  c12();
			  break;
			  
		  case 18:	//cave 1-3 and 1-5;
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("cave1.png");	//地图图片
			  mapData=Cave1_3.mapData;
			  map=new Maps(imMap,mapData,48,92,16,"cave1_3");
			  Maps.x=0;
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  c13();
			  break;
			  
		  case 19:	//cave 1-4
			  imMap=null;
			  mapData=null;
			  map=null;
			  imMap=new ImageManage("cave1.png");	//地图图片
			  mapData=Cave1_4.mapData;
			  map=new Maps(imMap,mapData,48,46,16,"cave1_4");
			  Maps.x=0;
			  Maps.y=0;
			  if(tankSprite!=null)
			  {
				  tankSprite.map=map;
			  }
			  if(!TankSprite.isChangeScreen)
				  c14();
			  break;
		  }
		if(Maps.w<50){
			zoom=4;
		}else if(Maps.w<100){
			zoom=2;
		}else if(Maps.w>100){
			zoom=1;
		}
		mapArray=new int [Maps.w*Maps.h*zoom];
		for(int i=0;i<mapArray.length;i++)
				mapArray[i]=0x7f7f7f7f;
	}
	
	public void audioRes(int level){
		
//		bgAudio=new AudioPlayer("stage1.mid","audio/midi",true);
		bgAudio=new AudioPlayer("stage"+level+".mid","audio/midi",true);
	}
	
	public void audioMenu(){
		menuAudio=new AudioPlayer("menu.mid","audio/midi",true);
	}
	
	protected void boss1(){
		imEnemySprite32=new ImageManage("boss1.png");
		/** EnemySprite32 */
		enemySprite32=null;
		enemySprite16=null;
		enemySprite32=new EnemySprite32[1];
		enemySprite32[0]=new Boss(gm,TankGameCanvas.width/2-48,TankGameCanvas.height/2-48,Boss.MOTHER_BRAIN,100);
		/** EnemySprite16 */
		enemySprite16=new EnemySprite16[8];
		for(int i=enemySprite16.length-1;i>=0;i--){
			enemySprite16[i]=new BossOneHelper(gm,i*45);
		}
//		
		/**StaticGoods*/
		staticGoods=new StaticGoods[0];
		
		/** Corps */
		corps=new Corps[0];
		
	}
	
	protected void a11(){
		/** EnemySprite32 */
		enemySprite32=new EnemySprite32[0];
		
		/** EnemySprite16 */
		enemySprite16=new EnemySprite16[0];
		
		/**StaticGoods*/
		staticGoods=new StaticGoods[0];
		
		/** Corps */
		corps=new Corps[0];
	}
	
	protected void a12(){
		
		/** EnemySprite32 */
		enemySprite32=null;
		enemySprite32=new EnemySprite32[10];
		/*石头人 数量6 */
		enemySprite32[0]=new RockMan(gm,29*16-Maps.x,29*16-Maps.y);
		enemySprite32[1]=new RockMan(gm,24*16-Maps.x,28*16-Maps.y);
		enemySprite32[2]=new RockMan(gm,26*16-Maps.x,28*16-Maps.y);
		enemySprite32[3]=new RockMan(gm,44*16-Maps.x,27*16-Maps.y);
		enemySprite32[4]=new RockMan(gm,49*16-Maps.x,29*16-Maps.y);
		enemySprite32[5]=new RockMan(gm,57*16-Maps.x,29*16-Maps.y);
		/* 太空船 */
		enemySprite32[6]=new SpaceShip(gm,59*16-Maps.x,20*16-Maps.y);
		enemySprite32[7]=new SpaceShip(gm,57*16-Maps.x,21*16-Maps.y);
		enemySprite32[8]=new SpaceShip(gm,52*16-Maps.x,25*16-Maps.y);
		enemySprite32[9]=new SpaceShip(gm,64*16-Maps.x,24*16-Maps.y);
		
		
		/** EnemySprite16 -----------------------------*/
		enemySprite16=null;
		enemySprite16=new EnemySprite16[5];
		/* 小石头人 */
		enemySprite16[0]=new Stoner(gm,98*16-Maps.x,30*16-Maps.y);
		//stonerEnemy[1]=new StonerEnemy(gm,0,0);
		/* 石头鸟 */
		enemySprite16[1]=new Guano(gm,110*16-Maps.x,28*16-Maps.y,true);
		enemySprite16[2]=new Guano(gm,108*16-Maps.x,32*16-Maps.y,true);
		enemySprite16[3]=new Guano(gm,81*16-Maps.x,31*16-Maps.y,false);
		enemySprite16[4]=new Guano(gm,77*16-Maps.x,29*16-Maps.y,false);
		
		/**StaticGoods*/
		staticGoods=null;
		staticGoods=new StaticGoods[0];
		
		/** Corps */
		corps=new Corps[0];
	}
	
	protected void a13(){
		/** EnemySprite32 */
		enemySprite32=null;
		enemySprite32=new EnemySprite32[0];
		
		/** EnemySprite16 ----------------------------------------------*/
		enemySprite16=null;
		enemySprite16=new EnemySprite16[4];
		/* Barbette */
		enemySprite16[0]=new Barbette(gm,7*16-Maps.x,8*16-Maps.y);
		enemySprite16[1]=new Barbette(gm,7*16-Maps.x,20*16-Maps.y);
		/* Stoner */
		enemySprite16[2]=new Stoner(gm,8*16-Maps.x,6*16-Maps.y);
		enemySprite16[3]=new Stoner(gm,6*16-Maps.x,9*16-Maps.y);
		
		/**StaticGoods*/
		staticGoods=null;
		staticGoods=new StaticGoods[0];
		
		/** Corps */
		corps=new Corps[0];
	}
	
	protected void a14(){
		/** Image */
		imEnemySprite32=null;
		imEnemySprite32=new ImageManage("EnemySprite32.png");
		/** EnemySprite32 */
		enemySprite32=null;
		enemySprite32=new EnemySprite32[16];
		/* 机枪兵 */
		enemySprite32[0]=new GunArms(gm,6*16-Maps.x,22*16-Maps.y);
		enemySprite32[1]=new GunArms(gm,20*16-Maps.x,22*16-Maps.y);
		enemySprite32[2]=new GunArms(gm,45*16-Maps.x,19*16-Maps.y);
		/* 太空船 */
		enemySprite32[3]=new SpaceShip(gm,12*16-Maps.x,5*16-Maps.y);
		enemySprite32[4]=new SpaceShip(gm,17*16-Maps.x,3*16-Maps.y);
		enemySprite32[5]=new SpaceShip(gm,24*16-Maps.x,4*16-Maps.y);
		enemySprite32[6]=new SpaceShip(gm,58*16-Maps.x,4*16-Maps.y);
		enemySprite32[7]=new SpaceShip(gm,48*16-Maps.x,4*16-Maps.y);
		/*石头人 数量6 */
		enemySprite32[8]=new RockMan(gm,50*16-Maps.x,19*16-Maps.y);
		enemySprite32[9]=new RockMan(gm,81*16-Maps.x,13*16-Maps.y);
		enemySprite32[10]=new RockMan(gm,85*16-Maps.x,17*16-Maps.y);
		enemySprite32[11]=new RockMan(gm,81*16-Maps.x,21*16-Maps.y);
		enemySprite32[12]=new RockMan(gm,88*16-Maps.x,27*16-Maps.y);
		enemySprite32[13]=new RockMan(gm,78*16-Maps.x,32*16-Maps.y);
		enemySprite32[14]=new RockMan(gm,48*16-Maps.x,34*16-Maps.y);
		enemySprite32[15]=new RockMan(gm,103*16-Maps.x,26*16-Maps.y);
		
		/** EnemySprite16 */
		enemySprite16=null;
		enemySprite16=new EnemySprite16[27];
		/* ET */
		enemySprite16[0]=new ET(gm,21*16-Maps.x,19*16-Maps.y);
		enemySprite16[1]=new ET(gm,31*16-Maps.x,31*16-Maps.y);
		enemySprite16[2]=new ET(gm,45*16-Maps.x,33*16-Maps.y);
		enemySprite16[3]=new ET(gm,59*16-Maps.x,25*16-Maps.y);
		enemySprite16[4]=new ET(gm,88*16-Maps.x,25*16-Maps.y);
		/* 水母 */
		enemySprite16[5]=new Jellyfish(gm,32*16-Maps.x,40*16-Maps.y);
		enemySprite16[6]=new Jellyfish(gm,33*16-Maps.x,42*16-Maps.y);
		enemySprite16[7]=new Jellyfish(gm,52*16-Maps.x,47*16-Maps.y);
		enemySprite16[8]=new Jellyfish(gm,15*16-Maps.x,45*16-Maps.y);
		enemySprite16[9]=new Jellyfish(gm,80*16-Maps.x,41*16-Maps.y);
		enemySprite16[10]=new Jellyfish(gm,84*16-Maps.x,44*16-Maps.y);
		enemySprite16[11]=new Jellyfish(gm,95*16-Maps.x,40*16-Maps.y);
		enemySprite16[12]=new Jellyfish(gm,96*16-Maps.x,41*16-Maps.y);
		enemySprite16[13]=new Jellyfish(gm,89*16-Maps.x,47*16-Maps.y);
		enemySprite16[14]=new Jellyfish(gm,98*16-Maps.x,48*16-Maps.y);
		/* 小石头人 */
		enemySprite16[15]=new Stoner(gm,19*16-Maps.x,32*16-Maps.y);
		enemySprite16[16]=new Stoner(gm,16*16-Maps.x,28*16-Maps.y);
		enemySprite16[17]=new Stoner(gm,50*16-Maps.x,28*16-Maps.y);
		/* 炸弹 */
		enemySprite16[18]=new TimeBomb(gm,28*16-Maps.x,42*16-Maps.y);
		enemySprite16[19]=new TimeBomb(gm,29*16-Maps.x,42*16-Maps.y);
		/* OddFace */
		enemySprite16[20]=new OddFace(gm,7*16-Maps.x,33*16-Maps.y,OddFace.HEAD);
		enemySprite16[21]=new OddFace(gm,7*16-Maps.x,34*16-Maps.y,OddFace.FACE);
		enemySprite16[22]=new OddFace(gm,7*16-Maps.x,35*16-Maps.y,OddFace.MOUSE);
		/* 石头鸟 */
		enemySprite16[23]=new Guano(gm,66*16-Maps.x,6*16-Maps.y,true);
		enemySprite16[24]=new Guano(gm,67*16-Maps.x,9*16-Maps.y,true);
		enemySprite16[25]=new Guano(gm,92*16-Maps.x,5*16-Maps.y,false);
		enemySprite16[26]=new Guano(gm,90*16-Maps.x,3*16-Maps.y,false);
		
		/**StaticGoods*/
		staticGoods=null;
		staticGoods=new StaticGoods[2];
		staticGoods[0]=new StaticGoods(gm,57*16-Maps.x,47*16-Maps.y,StaticGoods.HBALL);
		staticGoods[1]=new StaticGoods(gm,57*16-Maps.x,48*16-Maps.y,StaticGoods.HBALL);
		
		/** Corps  */
		corps=new Corps[3];
		corps[0]=new Corps(gm,6*16-Maps.x,33*16-Maps.y,Corps.BRICK);
		corps[1]=new Corps(gm,6*16-Maps.x,34*16-Maps.y,Corps.BRICK);
		corps[2]=new Corps(gm,6*16-Maps.x,35*16-Maps.y,Corps.BRICK);
	}
	
	protected void a15(){
		/** Image */
		imCorps=null;
		
		/** EnemySprite32 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -