📄 class_map.java
字号:
import java.io.IOException;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.LayerManager;
import javax.microedition.lcdui.game.TiledLayer;
public class Class_Map
{
private Image imgBackGround;
static TiledLayer backLayer,barrierLayer;
//地图ID
static byte ID;
static byte IDMax;
static String name;
//地图的宽高
static short width,height;
//地图内我方坦克总数量
static byte ownTankNum;
//地图内我方坦克总数量
static byte enemyTankNum;
//地图内出生点信息数组
static short[][] createPosition;
public Class_Map(LayerManager lm,byte ID)
{
try {
imgBackGround=Image.createImage("/imgBackGround.png");
} catch (IOException e) {
e.printStackTrace();
}
Class_Map.ID=ID;
switch(ID)
{
case 0:
{
name="第1关";
backLayer=new TiledLayer(11,13,imgBackGround,16,16);
barrierLayer=new TiledLayer(11,13,imgBackGround,16,16);
width=11*16;
height=13*16;
byte[][] backMap={
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1}
};
byte[][] barrierMap={
{2,2,2,2,2,2,2,2,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0},
{0,0,3,0,0,0,0,0,3,0,0},
{0,3,0,3,0,0,0,3,0,3,0},
{3,0,0,0,3,0,3,0,0,0,3},
{0,0,0,0,0,0,0,0,0,0,0},
{0,0,3,3,0,0,0,3,3,0,0},
{0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,3,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,3,3,3,0,0,0,0},
{2,2,2,2,2,2,2,2,2,2,2}
};
for(int y=0;y<13;y++)
for(int x=0;x<11;x++)
{
backLayer.setCell(x,y,backMap[y][x]);
barrierLayer.setCell(x,y,barrierMap[y][x]);
}
//我方坦克总数
ownTankNum=1;
//敌方坦克总数
enemyTankNum=1;
//出生点信息数组,元素的行对应出生点ID,
//第一、二列对应出生点X、Y坐标
//第三、四列对应在该出生点出生的坦克活动范围的左、右边界
createPosition=new short[][]
{
{0,176,0,160},{144,176,0,160}
};
break;
}
case 1:
{
name="第2关";
backLayer=new TiledLayer(17,13,imgBackGround,16,16);
barrierLayer=new TiledLayer(17,13,imgBackGround,16,16);
width=17*16;
height=13*16;
byte[][] backMap={
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};
byte[][] barrierMap={
{0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2},
{2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0}
};
for(int y=0;y<13;y++)
for(int x=0;x<17;x++)
{
backLayer.setCell(x,y,backMap[y][x]);
barrierLayer.setCell(x,y,barrierMap[y][x]);
}
//我方坦克总数
ownTankNum=2;
//敌方坦克总数
enemyTankNum=2;
//出生点信息数组,元素的行对应出生点ID,
//第一、二列对应出生点X、Y坐标
//第三、四列对应在该出生点出生的坦克活动范围的左、右边界
createPosition=new short[][]
{
{0,176,0,64},{224,32,224,256},
{0,112,0,32},{224,96,208,256}
};
break;
}
case 2:
{
name="第3关";
backLayer=new TiledLayer(14,13,imgBackGround,16,16);
barrierLayer=new TiledLayer(14,13,imgBackGround,16,16);
width=14*16;
height=13*16;
byte[][] backMap={
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};
byte[][] barrierMap={
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,0,0,0,0,0,0,0,2,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,0,0,0,0,0,2,2,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,2,0,0,0,2,2,2,2,2,2}
};
for(int y=0;y<13;y++)
for(int x=0;x<14;x++)
{
backLayer.setCell(x,y,backMap[y][x]);
barrierLayer.setCell(x,y,barrierMap[y][x]);
}
//我方坦克总数
ownTankNum=3;
//敌方坦克总数
enemyTankNum=3;
//出生点信息数组,元素的行对应出生点ID,
//第一、二列对应出生点X、Y坐标
//第三、四列对应在该出生点出生的坦克活动范围的左、右边界
createPosition=new short[][]
{
{0,48,0,32},{160,48,160,208},
{144,112,144,208},{0,112,0,48},
{0,176,0,64},{128,176,128,208}
};
break;
}
case 3:
{
name="第4关";
backLayer=new TiledLayer(16,14,imgBackGround,16,16);
barrierLayer=new TiledLayer(16,14,imgBackGround,16,16);
width=16*16;
height=14*16;
byte[][] backMap={
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};
byte[][] barrierMap={
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
};
for(int y=0;y<14;y++)
for(int x=0;x<16;x++)
{
backLayer.setCell(x,y,backMap[y][x]);
barrierLayer.setCell(x,y,barrierMap[y][x]);
}
//我方坦克总数
ownTankNum=3;
//敌方坦克总数
enemyTankNum=3;
//出生点信息数组,元素的行对应出生点ID,
//第一、二列对应出生点X、Y坐标
//第三、四列对应在该出生点出生的坦克活动范围的左、右边界
createPosition=new short[][]
{
{0,48,0,0},{228,48,224,224},
{80,144,80,80},{228,176,224,224},
{0,176,0,0},{144,80,144,144}
};
break;
}
case 4:
{
name="第5关";
backLayer=new TiledLayer(16,14,imgBackGround,16,16);
barrierLayer=new TiledLayer(16,14,imgBackGround,16,16);
width=16*16;
height=14*16;
byte[][] backMap={
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};
byte[][] barrierMap={
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,0,0,0,0,0,0,0,0,0,2,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0},
{0,0,0,0,2,2,2,2,2,2,2,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,0,0,0,0,0,0,0,0,0,2,2,2},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
};
for(int y=0;y<14;y++)
for(int x=0;x<16;x++)
{
backLayer.setCell(x,y,backMap[y][x]);
barrierLayer.setCell(x,y,barrierMap[y][x]);
}
//我方坦克总数
ownTankNum=3;
//敌方坦克总数
enemyTankNum=3;
//出生点信息数组,元素的行对应出生点ID,
//第一、二列对应出生点X、Y坐标
//第三、四列对应在该出生点出生的坦克活动范围的左、右边界
createPosition=new short[][]
{
{0,176,0,48},{0,64,0,32},
{128,112,128,160},{64,112,64,112},
{208,176,208,240},{192,64,192,240}
};
break;
}
}
lm.append(barrierLayer);
lm.append(backLayer);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -