📄 scoutplane.java
字号:
public class ScoutPlane extends Actor {
public ScoutPlane() {
world = World.getInstance();
}
public void initData() {
super.initSpiritDate("/scoutPlane.bin", "/scoutPlane.png",
"/scoutPlaneCom.bin");
}
public void changeMyState() {
int[] data = getIProcessData();
if (processCount < getIProcess()) {
if (++processTimeCount <= data[processCount * 3 + 0]) {
int orbitType = data[processCount * 3 + 1];
int bulletType = data[processCount * 3 + 2];
updateXY(orbitType, bulletType);
} else {
processCount++;
processTimeCount = 0;
}
}
}
public void updateXY(int orbitType, int bulletType) {
int xPos = getIPosX();
int yPos = getIPosY();
int speed = getSpeed() << 8;
switch (orbitType) {
case 12: // 顺时针向下
setAction((byte) 2);
setIPosY(yPos + speed);
if (bulletType != 0) {
if (processTimeCount == 1) {
world.newBullet(bulletType, xPos, yPos, 0, -7 << 8);
}
}
break;
case 0: // 原地不动
// if (processTimeCount == 1) {
// world.newBullet(9, xPos, yPos, 0, -2 << 8);
// }
break;
case 9: // 顺时针135度
setIPosX(xPos + speed);
setIPosY(yPos + speed);
break;
case 6: // 向右
setIPosX(xPos + speed);
break;
case 3: // 顺时针45度向上
setIPosX(xPos + speed);
setIPosY(yPos - speed);
case 24: // 屏幕后
setIPosY(yPos - speed);
break;
case 15: // 顺时针225度向下
if (processTimeCount == 1) {
world.newBullet(bulletType, xPos, yPos, 0, -2 << 8);
}
setIPosX(xPos - speed);
setIPosY(yPos + speed);
break;
case 21: // 顺时针315度向上
setAction((byte) 1);
setIPosX(xPos - speed);
setIPosY(yPos - speed);
break;
case 18: // 屏幕向左
setIPosX(xPos - speed);
break;
case 25:// 向下
setIPosY(yPos + (2 << 8));
break;
}
}
private World world;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -