📄 flightmodel.java
字号:
public class FlightModel
{
public FlightModel()
{
initFly();
}
//toMap 返回一个序列,坐标序列,此序列就是本架战斗机在地图中的坐标
// 当战斗机处于地图之外,toMap方法将会置tmp[0]=-1,否则tmp[0]将是第一个x坐标
public int[] toMap(int type, int x, int y)
{
switch (type)
{
case 0:
translateA(x, y);
break;
case 1:
translateB(x, y);
break;
case 2:
translateC(x, y);
break;
case 3:
translateD(x, y);
break;
default:
return null;
}
return flightsOfmap;
}
public void translateA(int x, int y)
{
for (int i = 0; i < 10; i++)
{
flightsOfmap[i*2] = FlyAX[i] + x;
flightsOfmap[i*2 + 1] = FlyAY[i] + y;
if( flightsOfmap[i*2] <0 || flightsOfmap[i*2] > 8 || flightsOfmap[i*2 + 1] <0 || flightsOfmap[i*2+1] >8 )
{
flightsOfmap[0]=-1;
return;
}
}
}
public void translateB(int x, int y)
{
for (int i = 0; i < 10; i++)
{
flightsOfmap[i*2] = FlyBX[i] + x;
flightsOfmap[i*2 + 1] = FlyBY[i] + y;
if( flightsOfmap[i*2] <0 || flightsOfmap[i*2] > 8 || flightsOfmap[i*2 + 1] <0 || flightsOfmap[i*2+1] >8 )
{
flightsOfmap[0]=-1;
return;
}
}
}
public void translateC(int x, int y)
{
for (int i = 0; i < 10; i++)
{
flightsOfmap[i*2] = FlyCX[i] + x;
flightsOfmap[i*2 + 1] = FlyCY[i] + y;
if( flightsOfmap[i*2] <0 || flightsOfmap[i*2] > 8 || flightsOfmap[i*2 + 1] <0 || flightsOfmap[i*2+1] >8 )
{
flightsOfmap[0]=-1;
return;
}
}
}
public void translateD(int x, int y)
{
for (int i = 0; i < 10; i++)
{
flightsOfmap[i*2] = FlyDX[i] + x;
flightsOfmap[i*2 + 1] = FlyDY[i] + y;
if( flightsOfmap[i*2] <0 || flightsOfmap[i*2] > 8 || flightsOfmap[i*2 + 1] <0 || flightsOfmap[i*2+1] >8 )
{
flightsOfmap[0]=-1;
return;
}
}
}
private void initFly()
{
FlyAX[0]=0;
FlyAY[0]=0;
FlyAX[1]=-2;
FlyAY[1]=-1;
FlyAX[2]=-1;
FlyAY[2]=-1;
FlyAX[3]=0;
FlyAY[3]=-1;
FlyAX[4]=1;
FlyAY[4]=-1;
FlyAX[5]=2;
FlyAY[5]=-1;
FlyAX[6]=0;
FlyAY[6]=-2;
FlyAX[7]=-1;
FlyAY[7]=-3;
FlyAX[8]=0;
FlyAY[8]=-3;
FlyAX[9]=1;
FlyAY[9]=-3;
FlyBX[0]=0;
FlyBY[0]=0;
FlyBX[1]=-1;
FlyBY[1]=2;
FlyBX[2]=-1;
FlyBY[2]=1;
FlyBX[3]=-1;
FlyBY[3]=0;
FlyBX[4]=-1;
FlyBY[4]=-1;
FlyBX[5]=-1;
FlyBY[5]=-2;
FlyBX[6]=-2;
FlyBY[6]=0;
FlyBX[7]=-3;
FlyBY[7]=1;
FlyBX[8]=-3;
FlyBY[8]=0;
FlyBX[9]=-3;
FlyBY[9]=-1;
FlyCX[0]=0;
FlyCY[0]=0;
FlyCX[1]=-2;
FlyCY[1]=1;
FlyCX[2]=-1;
FlyCY[2]=1;
FlyCX[3]=0;
FlyCY[3]=1;
FlyCX[4]=1;
FlyCY[4]=1;
FlyCX[5]=2;
FlyCY[5]=1;
FlyCX[6]=0;
FlyCY[6]=2;
FlyCX[7]=-1;
FlyCY[7]=3;
FlyCX[8]=0;
FlyCY[8]=3;
FlyCX[9]=1;
FlyCY[9]=3;
FlyDX[0]=0;
FlyDY[0]=0;
FlyDX[1]=1;
FlyDY[1]=2;
FlyDX[2]=1;
FlyDY[2]=1;
FlyDX[3]=1;
FlyDY[3]=0;
FlyDX[4]=1;
FlyDY[4]=-1;
FlyDX[5]=1;
FlyDY[5]=-2;
FlyDX[6]=2;
FlyDY[6]=0;
FlyDX[7]=3;
FlyDY[7]=1;
FlyDX[8]=3;
FlyDY[8]=0;
FlyDX[9]=3;
FlyDY[9]=-1;
}
public int[]flightsOfmap = new int[20];
private static final int []FlyAX = new int[10];
private static final int []FlyAY = new int[10];
private static final int []FlyBX = new int[10];
private static final int []FlyBY = new int[10];
private static final int []FlyCX = new int[10];
private static final int []FlyCY = new int[10];
private static final int []FlyDX = new int[10];
private static final int []FlyDY = new int[10];
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -