📄 fwlogger.java
字号:
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class FWLogger
{
public FWLogger (FWmainCanvas canvas)
{
flightCount = 0;
this.Canvas = canvas;
for (int i = 0; i < 3; i++)
{
fPos[i] = 0;
flightType[i] = 0;
flightHeadDot[i] = new Dot();
flightPoint[i] = new Dot();
}
}
public void setFlightPoint(int type, int x, int y)
{
flightType[flightCount] = type;
switch (type)
{
case 0:
fPos[flightCount] = Graphics.TOP|Graphics.HCENTER;
//System.out.println("here");
//imgFlight[flightCount] = this.Canvas.imgFlightA;
//System.out.println("here2");
flightPoint[flightCount].x = this.Canvas.mapbaseX+(x*2+1)*this.Canvas.deltaX/2;
System.out.println("here3");
flightPoint[flightCount].y = this.Canvas.mapbaseY+(8-y)*this.Canvas.deltaY;
break;
case 1:
fPos[flightCount] = Graphics.RIGHT|Graphics.VCENTER;
//imgFlight[flightCount] = Image.createImage(this.Canvas.imgFlightB);
flightPoint[flightCount].x = this.Canvas.mapbaseX+(x+1)*this.Canvas.deltaX;
flightPoint[flightCount].y = this.Canvas.mapbaseY+(17-y*2)*this.Canvas.deltaY/2;
break;
case 2:
fPos[flightCount] = Graphics.BOTTOM|Graphics.HCENTER;
//imgFlight[flightCount] = Image.createImage(this.Canvas.imgFlightC);
flightPoint[flightCount].x = this.Canvas.mapbaseX+(x*2+1)*this.Canvas.deltaX/2;
flightPoint[flightCount].y = this.Canvas.mapbaseY+(9-y)*this.Canvas.deltaY;
break;
case 3:
fPos[flightCount] = Graphics.LEFT|Graphics.VCENTER;
//imgFlight[flightCount] = Image.createImage(this.Canvas.imgFlightD);
flightPoint[flightCount].x = this.Canvas.mapbaseX+x*this.Canvas.deltaX;
flightPoint[flightCount].y = this.Canvas.mapbaseY+(18-2*y-1)*this.Canvas.deltaY/2;
break;
default:
System.out.println("wrong flight type");
break;
}
flightHeadDot[flightCount].x = x;
flightHeadDot[flightCount].y = y;
flightCount++;
}
public void resetFlightPoint(int x, int y)
{
if(flightCount == 0)return;
for (int i = 0; i < flightCount; i++)
{
if(flightHeadDot[i].x == x && flightHeadDot[i].y == y)
{
if( i == flightCount - 1 )
flightCount--;
else
{
flightHeadDot[i].x = flightHeadDot[flightCount-1].x;
flightHeadDot[i].y = flightHeadDot[flightCount-1].y;
flightPoint[i].x = flightPoint[flightCount-1].x;
flightPoint[i].y = flightPoint[flightCount-1].y;
flightType[i] = flightType[flightCount-1];
fPos[i] = fPos[flightCount-1];
flightCount--;
}
}
}
}
public int getFlightType(int headX, int headY)
{
for (int i = 0; i < flightCount; i++)
{
if(flightHeadDot[i].x == headX && flightHeadDot[i].y == headY)
return flightType[i];
}
return -1;
}
public void setImgMap( Image buffer )
{
imgMap = Image.createImage(buffer);
}
public FWmainCanvas Canvas;
public int flightCount;
public int []flightType = new int[3];
//public Image []imgFlight = new Image[3];
public Dot []flightHeadDot = new Dot[3];
public Dot []flightPoint = new Dot[3];
public int []fPos = new int[3];
public Image imgMap;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -