📄 maincanvas.java
字号:
}
break;
case 2: // '\002'
if(l12 == 0)
{
if(!BossAlive[l12])
{
Muteki = 10;
BossAlive[1] = false;
BossAlive[2] = false;
BossBomb[l12]++;
if(BossBomb[l12] / 4 >= 5 && PlayerBomb <= 0)
{
BossType[l12] = 0;
GameClear = true;
}
break;
}
BossFlag2[l12]++;
if(BossFlag2[l12] >= 10 && BossFlag2[l12] < 30 || BossFlag2[l12] >= 80 && BossFlag2[l12] < 90)
{
byte byte0;
if(Round == 1)
byte0 = 3;
else
byte0 = 2;
if(BossFlag2[l12] % byte0 == 0)
{
if(BossAlive[1])
{
int j2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 36, BossY[l12] + 12, CIRCLEX[j2] * 3, CIRCLEY[j2] * 3);
j2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 32, BossY[l12] + 6, CIRCLEX[j2] * 3, CIRCLEY[j2] * 3);
j2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 28, BossY[l12] + 0, CIRCLEX[j2] * 3, CIRCLEY[j2] * 3);
}
if(BossAlive[2])
{
int k2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 36, BossY[l12] + 12, CIRCLEX[k2] * 3, CIRCLEY[k2] * 3);
k2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 32, BossY[l12] + 6, CIRCLEX[k2] * 3, CIRCLEY[k2] * 3);
k2 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 28, BossY[l12] + 0, CIRCLEX[k2] * 3, CIRCLEY[k2] * 3);
}
}
} else
if(BossFlag2[l12] >= 50 && BossFlag2[l12] < 59)
{
int l2 = BossFlag2[l12] - 50;
int ai3[] = {
1, 1, 1, 2, 2, 2, 3, 3, 3
};
CreateEShot(ai3[l2], BossX[l12] - 9, BossY[l12] - 4, CIRCLEX[l2 * 2 + 16] * 4, CIRCLEY[l2 * 2 + 16] * 4);
CreateEShot(ai3[l2], BossX[l12] + 9, BossY[l12] - 4, -CIRCLEX[l2 * 2 + 16] * 4, CIRCLEY[l2 * 2 + 16] * 4);
flag3 = false;
} else
if(BossFlag2[l12] >= 30 && BossFlag2[l12] < 49 || BossFlag2[l12] >= 70 && BossFlag2[l12] < 89)
{
if(Round != 1 && BossFlag2[l12] % 3 == 0)
{
if(BossAlive[1])
CreateEShot(4, BossX[l12] - 22, BossY[l12] - 15, 0, 60);
if(BossAlive[2])
CreateEShot(4, BossX[l12] + 22, BossY[l12] - 15, 0, 60);
}
} else
if(BossFlag2[l12] == 95)
BossFlag2[l12] = 0;
else
if(BossFlag2[l12] >= 110 && BossFlag2[l12] < 150)
{
if(BossFlag2[l12] >= 120 && BossFlag2[l12] < 140 && BossFlag2[l12] % 2 == 0)
{
for(int j15 = 2; j15 <= 12; j15 += 2)
{
CreateEShot(5, BossX[l12] - 9, BossY[l12] - 4, CIRCLEX[j15 + 16] * 8, CIRCLEY[j15 + 16] * 8);
CreateEShot(5, BossX[l12] + 9, BossY[l12] - 4, -CIRCLEX[j15 + 16] * 8, CIRCLEY[j15 + 16] * 8);
}
if(Round != 1)
CreateEShot(5, BossX[l12], BossY[l12] - 4, 0, 80);
}
flag3 = false;
} else
if(BossFlag2[l12] >= 160 && BossFlag2[l12] < 169)
{
int i3 = BossFlag2[l12] - 160;
int ai4[] = {
1, 1, 1, 2, 2, 2, 3, 3, 3
};
CreateEShot(ai4[i3], BossX[l12] - 9, BossY[l12] - 4, CIRCLEX[i3 * 2 + 16] * 4, CIRCLEY[i3 * 2 + 16] * 4);
CreateEShot(ai4[i3], BossX[l12] + 9, BossY[l12] - 4, -CIRCLEX[i3 * 2 + 16] * 4, CIRCLEY[i3 * 2 + 16] * 4);
byte byte1;
if(Round == 1)
byte1 = 3;
else
byte1 = 2;
if(BossFlag2[l12] % byte1 == 0)
{
if(BossAlive[1])
{
int j3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 36, BossY[l12] + 12, CIRCLEX[j3] * 3, CIRCLEY[j3] * 3);
j3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 32, BossY[l12] + 6, CIRCLEX[j3] * 3, CIRCLEY[j3] * 3);
j3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] - 28, BossY[l12] + 0, CIRCLEX[j3] * 3, CIRCLEY[j3] * 3);
}
if(BossAlive[2])
{
int k3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 36, BossY[l12] + 12, CIRCLEX[k3] * 3, CIRCLEY[k3] * 3);
k3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 32, BossY[l12] + 6, CIRCLEX[k3] * 3, CIRCLEY[k3] * 3);
k3 = Math.abs(god.nextInt() % 16) + 16;
CreateEShot(0, BossX[l12] + 28, BossY[l12] + 0, CIRCLEX[k3] * 3, CIRCLEY[k3] * 3);
}
}
if(Round != 1 && BossFlag2[l12] % 3 == 0)
{
if(BossAlive[1])
CreateEShot(4, BossX[l12] - 22, BossY[l12] - 15, 0, 60);
if(BossAlive[2])
CreateEShot(4, BossX[l12] + 22, BossY[l12] - 15, 0, 60);
}
flag3 = false;
} else
if(BossFlag2[l12] == 180)
BossFlag2[l12] = 100;
else
if(BossFlag2[l12] < 100 && BossLife[l12] <= BossMaxLife >> 1)
BossFlag2[l12] = 100;
switch(BossFlag1[l12])
{
default:
break;
case 0: // '\0'
BossY[l12] += 4;
if(BossY[l12] >= (BossYSize[l12] >> 1) + 0)
BossFlag1[l12] = 1;
break label0;
case 1: // '\001'
if(!flag3)
break label0;
BossX[l12] -= 2;
if(BossX[l12] <= BossXSize[l12] >> 1)
BossFlag1[l12] = 2;
break label0;
case 2: // '\002'
if(!flag3)
break label0;
BossX[l12] += 2;
if(BossX[l12] >= SCREEN_W - (BossXSize[l12] >> 1))
BossFlag1[l12] = 1;
break;
}
break;
}
if(!BossAlive[l12])
{
BossBomb[l12]++;
if(BossBomb[l12] >= 5)
BossType[l12] = 0;
break;
}
if(l12 == 1)
{
BossX[1] = BossX[0] - 25;
BossY[1] = BossY[0] - 6;
break;
}
if(l12 == 2)
{
BossX[2] = BossX[0] + 25;
BossY[2] = BossY[0] - 6;
}
break;
case 3: // '\003'
if(l12 == 0)
{
if(!BossAlive[l12])
{
Muteki = 10;
BossAlive[1] = false;
BossAlive[2] = false;
BossBomb[l12]++;
if(BossBomb[l12] / 4 >= 5 && PlayerBomb <= 0)
{
BossType[l12] = 0;
GameClear = true;
}
break;
}
BossFlag2[l12]++;
if(BossFlag2[l12] >= 10 && BossFlag2[l12] < 50)
{
byte byte2;
if(Round == 1)
byte2 = 3;
else
byte2 = 2;
if(BossFlag2[l12] % byte2 == 0)
{
int l3 = Math.abs(god.nextInt() % 41) - 20;
CreateEShot(6, BossX[l12], BossY[l12] + 10, l3, 10);
}
} else
if(BossFlag2[l12] >= 70 && BossFlag2[l12] < 80)
{
if(BossFlag2[l12] % 2 == 0)
{
if(BossAlive[1])
{
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, -36, 48);
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, -18, 54);
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, 0, 60);
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, 18, 54);
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, 36, 48);
if(Round != 1)
{
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, -42, 42);
CreateEShot(1, BossX[l12] - 24, BossY[l12] - 8, 42, 42);
}
}
if(BossAlive[2])
{
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, -36, 48);
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, -18, 54);
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, 0, 60);
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, 18, 54);
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, 36, 48);
if(Round != 1)
{
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, -42, 42);
CreateEShot(1, BossX[l12] + 24, BossY[l12] - 8, 42, 42);
}
}
}
flag3 = false;
} else
if(BossFlag2[l12] >= 100 && BossFlag2[l12] < 120)
{
if(BossFlag2[l12] % 5 == 0)
{
for(int k15 = 0; k15 < 10; k15++)
{
int i4;
int l8;
if(Round == 1)
{
i4 = Math.abs(god.nextInt() % 5) - 2;
l8 = Math.abs(god.nextInt() % 5) - 2;
} else
{
i4 = Math.abs(god.nextInt() % 9) - 4;
l8 = Math.abs(god.nextInt() % 9) - 4;
}
Path = SetTarget(BossX[l12], BossY[l12] + 10, PlayerX, PlayerY, 4);
CreateEShot(1, BossX[l12], BossY[l12] + 10, Path[0] + i4 * 4, Path[1] + l8 * 4);
}
}
flag3 = false;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -