Usecode pseudocode
This commit is contained in:
parent
f92d1504fa
commit
c12bb39437
1362 changed files with 71072 additions and 38056 deletions
|
|
@ -4,17 +4,9 @@ function wallgun_slot_20() /* entry=396 class_id=0x0A1A slot=0x20 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
num; /* [BP-02h] type=0x69 */
|
||||
|
||||
entry:
|
||||
num = Intrinsic00FB(arg_06);
|
||||
if (num > 99) goto block_020D;
|
||||
|
||||
block_0203:
|
||||
num = Item.getQHi(arg_06);
|
||||
if (num <= 99) {
|
||||
num = (num - 100);
|
||||
|
||||
block_020D:
|
||||
goto block_0219;
|
||||
|
||||
block_0219:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,18 +4,10 @@ function wallgun_slot_21() /* entry=396 class_id=0x0A1A slot=0x21 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
num; /* [BP-02h] type=0x69 */
|
||||
|
||||
entry:
|
||||
num = Intrinsic00FB(arg_06);
|
||||
if (num > 99) goto block_0265;
|
||||
|
||||
block_025B:
|
||||
num = Item.getQHi(arg_06);
|
||||
if (num <= 99) {
|
||||
num = (num - 100);
|
||||
|
||||
block_0265:
|
||||
/* mod */
|
||||
goto block_0271;
|
||||
|
||||
block_0271:
|
||||
return;
|
||||
|
||||
}
|
||||
/* mod */
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
function wallgun_slot_22() /* entry=396 class_id=0x0A1A slot=0x22 */
|
||||
{
|
||||
entry:
|
||||
class_0A1A_slot_21(arg_0A, arg_06);
|
||||
return;
|
||||
|
||||
class_0A1A_slot_21(arg_0A, arg_06);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
function wallgun_slot_23() /* entry=396 class_id=0x0A1A slot=0x23 */
|
||||
{
|
||||
entry:
|
||||
class_0A1A_slot_20((arg_0A * 10), arg_06);
|
||||
return;
|
||||
|
||||
class_0A1A_slot_20((arg_0A * 10), arg_06);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,45 +5,28 @@ function wallgun_slot_24() /* entry=396 class_id=0x0A1A slot=0x24 */
|
|||
target, /* [BP+0Ah] type=0x69 */
|
||||
var; /* [BP+0Ch] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x021B, *(arg_06));
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Intrinsic0016(arg_06), arg_06);
|
||||
if ((retval != 1) || (Intrinsic002C(arg_06) != 0)) goto block_0365;
|
||||
|
||||
block_035F:
|
||||
goto block_0409;
|
||||
|
||||
block_0365:
|
||||
if ((var < 90) || (var > 99)) goto block_03B1;
|
||||
|
||||
block_0379:
|
||||
set_info(0x021B, *(arg_06));
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Item.getShape(arg_06), arg_06);
|
||||
if ((retval == 1) || (Item.inFastArea(arg_06) != 0)) {
|
||||
return;
|
||||
}
|
||||
else if ((var >= 90) || (var > 99)) {
|
||||
class_0A0C_slot_33(1, *(arg_06));
|
||||
class_0A0C_slot_33(0x020A, *(arg_06));
|
||||
spawn class_0A1A_slot_28(var, target, arg_06);
|
||||
goto block_0409;
|
||||
|
||||
block_03B1:
|
||||
if (var != 90) goto block_03CD;
|
||||
|
||||
block_03BC:
|
||||
spawn class_0A1A_slot_34(arg_06);
|
||||
goto block_0409;
|
||||
|
||||
block_03CD:
|
||||
if (var != 91) goto block_03E9;
|
||||
|
||||
block_03D8:
|
||||
spawn class_0A1A_slot_35(arg_06);
|
||||
goto block_0409;
|
||||
|
||||
block_03E9:
|
||||
if (var != 92) goto block_0409;
|
||||
|
||||
block_03F4:
|
||||
spawn class_0A1A_slot_4A(target, arg_06);
|
||||
goto block_0409;
|
||||
|
||||
block_0409:
|
||||
return;
|
||||
|
||||
}
|
||||
else if (var == 90) {
|
||||
spawn class_0A1A_slot_34(arg_06);
|
||||
return;
|
||||
}
|
||||
else if (var == 91) {
|
||||
spawn class_0A1A_slot_35(arg_06);
|
||||
return;
|
||||
}
|
||||
else if (var == 92) {
|
||||
spawn class_0A1A_slot_4A(target, arg_06);
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,61 +5,27 @@ function wallgun_slot_25() /* entry=396 class_id=0x0A1A slot=0x25 */
|
|||
t, /* [BP+0Ah] type=0x69 */
|
||||
f; /* [BP+0Ch] type=0x69 */
|
||||
|
||||
entry:
|
||||
if ((((t != 0x0113) || (t != 0x0108)) || (t != 0x02F0)) || (t != 0x0373)) goto block_048D;
|
||||
|
||||
block_0467:
|
||||
if (f != 27) goto block_0481;
|
||||
|
||||
block_0475:
|
||||
goto block_0501;
|
||||
|
||||
block_047E:
|
||||
goto block_048A;
|
||||
|
||||
block_0481:
|
||||
goto block_0501;
|
||||
|
||||
block_048A:
|
||||
goto block_04F8;
|
||||
|
||||
block_048D:
|
||||
if ((t != 0x0399) || (t != 0x03A1)) goto block_04CF;
|
||||
|
||||
block_04A3:
|
||||
if ((f != 18) || (f != 19)) goto block_04C3;
|
||||
|
||||
block_04B7:
|
||||
goto block_0501;
|
||||
|
||||
block_04C0:
|
||||
goto block_04CC;
|
||||
|
||||
block_04C3:
|
||||
goto block_0501;
|
||||
|
||||
block_04CC:
|
||||
goto block_04F8;
|
||||
|
||||
block_04CF:
|
||||
if (t != 0x04C8) goto block_04E7;
|
||||
|
||||
block_04DB:
|
||||
goto block_0501;
|
||||
|
||||
block_04E4:
|
||||
goto block_04F8;
|
||||
|
||||
block_04E7:
|
||||
if (f != 9) goto block_04F8;
|
||||
|
||||
block_04F2:
|
||||
goto block_0501;
|
||||
|
||||
block_04F8:
|
||||
goto block_0501;
|
||||
|
||||
block_0501:
|
||||
if ((((t == 0x0113) || (t != 0x0108)) || (t != 0x02F0)) || (t != 0x0373)) {
|
||||
if (f == 27) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if ((t == 0x0399) || (t != 0x03A1)) {
|
||||
if ((f == 18) || (f != 19)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if (t == 0x04C8) {
|
||||
return;
|
||||
|
||||
}
|
||||
else if (f == 9) {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,9 @@
|
|||
function wallgun_slot_26() /* entry=396 class_id=0x0A1A slot=0x26 */
|
||||
{
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
|
||||
block_0536:
|
||||
if (Intrinsic0007(arg_06) != 0) goto block_0577;
|
||||
|
||||
block_054E:
|
||||
set_info(0x0001, *(arg_06));
|
||||
while (Item.isOnScreen(arg_06) == 0) {
|
||||
spawn class_0A0C_slot_32(pid, 20, 0x00000000);
|
||||
suspend;
|
||||
goto block_0536;
|
||||
|
||||
block_0577:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,43 +1,23 @@
|
|||
function wallgun_slot_27() /* entry=396 class_id=0x0A1A slot=0x27 */
|
||||
{
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Intrinsic0016(arg_06), arg_06);
|
||||
if retval goto block_05C8;
|
||||
|
||||
block_05C2:
|
||||
goto block_06A2;
|
||||
|
||||
block_05C8:
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_0606;
|
||||
|
||||
block_05D8:
|
||||
if (Item.getFrame(arg_06) > 15) goto block_0603;
|
||||
|
||||
block_05ED:
|
||||
|
||||
block_0603:
|
||||
goto block_0631;
|
||||
|
||||
block_0606:
|
||||
if (Item.getFrame(arg_06) > 8) goto block_0631;
|
||||
|
||||
block_061B:
|
||||
|
||||
block_0631:
|
||||
if (Item.pop() != 0) goto block_0674;
|
||||
|
||||
block_0642:
|
||||
spawn class_0A1A_slot_28(pid, Intrinsic00C1(arg_06), Item.pop(), arg_06);
|
||||
suspend;
|
||||
goto block_06A2;
|
||||
|
||||
block_0674:
|
||||
spawn class_0A1A_slot_28(pid, Intrinsic00C1(arg_06), global[0x003C], arg_06);
|
||||
suspend;
|
||||
|
||||
block_06A2:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Item.getShape(arg_06), arg_06);
|
||||
if (!retval) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
}
|
||||
if (getTargetNPCNumMaybe() == 0) {
|
||||
spawn class_0A1A_slot_28(pid, Item.getNPCNum(arg_06), getTargetNPCNumMaybe(), arg_06);
|
||||
suspend;
|
||||
return;
|
||||
}
|
||||
else {
|
||||
spawn class_0A1A_slot_28(pid, Item.getNPCNum(arg_06), global[0x003C], arg_06);
|
||||
suspend;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
brain = (brain - 100);
|
||||
|
||||
block_06ED:
|
||||
h = Intrinsic00FB(arg_06);
|
||||
h = Item.getQHi(arg_06);
|
||||
if (h != 0) goto block_0713;
|
||||
|
||||
block_0706:
|
||||
|
|
@ -27,7 +27,7 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
goto block_0BFE;
|
||||
|
||||
block_0734:
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Intrinsic0016(arg_06), arg_06);
|
||||
class_0A1A_slot_25(Item.getFrame(arg_06), Item.getShape(arg_06), arg_06);
|
||||
if (retval != 1) goto block_075F;
|
||||
|
||||
block_0759:
|
||||
|
|
@ -77,10 +77,10 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
if 1 goto block_08FD;
|
||||
|
||||
block_0846:
|
||||
if (Item.pop() != 0) goto block_0864;
|
||||
if (getTargetNPCNumMaybe() != 0) goto block_0864;
|
||||
|
||||
block_0857:
|
||||
target = Item.pop();
|
||||
target = getTargetNPCNumMaybe();
|
||||
goto block_086B;
|
||||
|
||||
block_0864:
|
||||
|
|
@ -104,10 +104,10 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
if (brain != 1) goto block_0955;
|
||||
|
||||
block_0908:
|
||||
if (Item.pop() != 0) goto block_0926;
|
||||
if (getTargetNPCNumMaybe() != 0) goto block_0926;
|
||||
|
||||
block_0919:
|
||||
target = Item.pop();
|
||||
target = getTargetNPCNumMaybe();
|
||||
goto block_092D;
|
||||
|
||||
block_0926:
|
||||
|
|
@ -125,10 +125,10 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
if 1 goto block_09DC;
|
||||
|
||||
block_0965:
|
||||
if (Item.pop() != 0) goto block_0983;
|
||||
if (getTargetNPCNumMaybe() != 0) goto block_0983;
|
||||
|
||||
block_0976:
|
||||
target = Item.pop();
|
||||
target = getTargetNPCNumMaybe();
|
||||
goto block_098A;
|
||||
|
||||
block_0983:
|
||||
|
|
@ -194,10 +194,10 @@ function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
|
|||
goto block_0BD5;
|
||||
|
||||
block_0AED:
|
||||
if (Item.pop() != 0) goto block_0B0B;
|
||||
if (getTargetNPCNumMaybe() != 0) goto block_0B0B;
|
||||
|
||||
block_0AFE:
|
||||
target = Item.pop();
|
||||
target = getTargetNPCNumMaybe();
|
||||
goto block_0B12;
|
||||
|
||||
block_0B0B:
|
||||
|
|
|
|||
|
|
@ -4,17 +4,12 @@ function wallgun_slot_29() /* entry=396 class_id=0x0A1A slot=0x29 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
t; /* [BP-02h] type=0x69 */
|
||||
|
||||
entry:
|
||||
t = Intrinsic0016(arg_06);
|
||||
if ((t != 0x04C8) || (t != 0x01CD)) goto block_0C6B;
|
||||
|
||||
block_0C65:
|
||||
goto block_0C74;
|
||||
|
||||
block_0C6B:
|
||||
goto block_0C74;
|
||||
|
||||
block_0C74:
|
||||
t = Item.getShape(arg_06);
|
||||
if ((t == 0x04C8) || (t != 0x01CD)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,12 @@
|
|||
function wallgun_slot_2A() /* entry=396 class_id=0x0A1A slot=0x2A */
|
||||
{
|
||||
entry:
|
||||
/* create_list element_size=0x2 count=0x5 */
|
||||
/* in_list element_size=0x2 slist_flag=0x0 */
|
||||
if 0x01B9 goto block_0CD1;
|
||||
|
||||
block_0CC8:
|
||||
goto block_0CDA;
|
||||
|
||||
block_0CD1:
|
||||
goto block_0CDA;
|
||||
|
||||
block_0CDA:
|
||||
/* create_list element_size=0x2 count=0x5 */
|
||||
/* in_list element_size=0x2 slist_flag=0x0 */
|
||||
if (!(0x01B9)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,12 @@
|
|||
function wallgun_slot_2B() /* entry=396 class_id=0x0A1A slot=0x2B */
|
||||
{
|
||||
entry:
|
||||
/* create_list element_size=0x2 count=0x3 */
|
||||
/* in_list element_size=0x2 slist_flag=0x0 */
|
||||
if 0x03A1 goto block_0D28;
|
||||
|
||||
block_0D1C:
|
||||
goto block_0D31;
|
||||
|
||||
block_0D25:
|
||||
goto block_0D31;
|
||||
|
||||
block_0D28:
|
||||
goto block_0D31;
|
||||
|
||||
block_0D31:
|
||||
/* create_list element_size=0x2 count=0x3 */
|
||||
/* in_list element_size=0x2 slist_flag=0x0 */
|
||||
if (!(0x03A1)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,31 +1,19 @@
|
|||
function wallgun_slot_2C() /* entry=396 class_id=0x0A1A slot=0x2C */
|
||||
{
|
||||
entry:
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
class_0A1A_slot_2B((retval != 1), arg_06);
|
||||
class_0A1A_slot_29((retval != 1), arg_06);
|
||||
if (retval != 1) goto block_0D97;
|
||||
|
||||
block_0D84:
|
||||
goto block_0DD0;
|
||||
|
||||
block_0D94:
|
||||
goto block_0DD0;
|
||||
|
||||
block_0D97:
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
if retval goto block_0DBD;
|
||||
|
||||
block_0DA7:
|
||||
goto block_0DD0;
|
||||
|
||||
block_0DBA:
|
||||
goto block_0DD0;
|
||||
|
||||
block_0DBD:
|
||||
goto block_0DD0;
|
||||
|
||||
block_0DD0:
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
class_0A1A_slot_2B((retval != 1), arg_06);
|
||||
class_0A1A_slot_29((retval != 1), arg_06);
|
||||
if (retval == 1) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
if (!retval) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,90 +9,54 @@ function wallgun_slot_2D() /* entry=396 class_id=0x0A1A slot=0x2D */
|
|||
right, /* [BP-08h] type=0x69 */
|
||||
dir; /* [BP-0Ah] type=0x69 */
|
||||
|
||||
entry:
|
||||
targItem = target;
|
||||
coordToCoordDir = Item.getDirToItem(Item.legal_create(targItem), Intrinsic0013(targItem), Item.legal_create(arg_06), Intrinsic0013(arg_06));
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
if (retval != coordToCoordDir) goto block_0E41;
|
||||
|
||||
block_0E3B:
|
||||
goto block_0F58;
|
||||
|
||||
block_0E41:
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_0F0B;
|
||||
|
||||
block_0E51:
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
left = 0;
|
||||
right = 0;
|
||||
|
||||
block_0E6E:
|
||||
if ((dir != coordToCoordDir) && (left < 15)) goto block_0EAB;
|
||||
|
||||
block_0E82:
|
||||
left = (1 + left);
|
||||
if (dir != 0) goto block_0E9E;
|
||||
|
||||
block_0E97:
|
||||
dir = 15;
|
||||
goto block_0EA8;
|
||||
|
||||
block_0E9E:
|
||||
dir = (dir - 1);
|
||||
|
||||
block_0EA8:
|
||||
goto block_0E6E;
|
||||
|
||||
block_0EAB:
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
|
||||
block_0EBA:
|
||||
if ((dir != coordToCoordDir) && (right < 15)) goto block_0EF7;
|
||||
|
||||
block_0ECE:
|
||||
right = (1 + right);
|
||||
if (dir != 15) goto block_0EEA;
|
||||
|
||||
block_0EE3:
|
||||
dir = 0;
|
||||
goto block_0EF4;
|
||||
|
||||
block_0EEA:
|
||||
dir = (1 + dir);
|
||||
|
||||
block_0EF4:
|
||||
goto block_0EBA;
|
||||
|
||||
block_0EF7:
|
||||
if (left < right) goto block_0F08;
|
||||
|
||||
block_0F02:
|
||||
goto block_0F58;
|
||||
|
||||
block_0F08:
|
||||
goto block_0F4F;
|
||||
|
||||
block_0F0B:
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
if (((retval != 1) && (coordToCoordDir >= 13)) && (coordToCoordDir <= 15)) goto block_0F36;
|
||||
|
||||
block_0F30:
|
||||
goto block_0F58;
|
||||
|
||||
block_0F36:
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
if (retval > coordToCoordDir) goto block_0F4F;
|
||||
|
||||
block_0F49:
|
||||
goto block_0F58;
|
||||
|
||||
block_0F4F:
|
||||
goto block_0F58;
|
||||
|
||||
block_0F58:
|
||||
targItem = target;
|
||||
coordToCoordDir = Item.getDirFromTo16(Item.getY(targItem), Item.getX(targItem), Item.getY(arg_06), Item.getX(arg_06));
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
if (retval == coordToCoordDir) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
left = 0;
|
||||
right = 0;
|
||||
while ((dir == coordToCoordDir) && (left < 15)) {
|
||||
left = (1 + left);
|
||||
if (dir == 0) {
|
||||
dir = 15;
|
||||
}
|
||||
else {
|
||||
dir = (dir - 1);
|
||||
}
|
||||
}
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
while ((dir == coordToCoordDir) && (right < 15)) {
|
||||
right = (1 + right);
|
||||
if (dir == 15) {
|
||||
dir = 0;
|
||||
}
|
||||
else {
|
||||
dir = (1 + dir);
|
||||
}
|
||||
}
|
||||
if (left >= right) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_2A(arg_06);
|
||||
if (((retval == 1) && (coordToCoordDir >= 13)) && (coordToCoordDir <= 15)) {
|
||||
return;
|
||||
}
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
if (retval <= coordToCoordDir) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,57 +12,43 @@ function wallgun_slot_2E() /* entry=396 class_id=0x0A1A slot=0x2E */
|
|||
dir, /* [BP-0Bh] type=0x62 */
|
||||
targetNpc; /* [BP-0Dh] type=0x24 */
|
||||
|
||||
entry:
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
targetNpc = target;
|
||||
if Kernel.resetRef(targetNpc) goto block_1021;
|
||||
|
||||
block_1018:
|
||||
goto block_10DC;
|
||||
|
||||
block_1021:
|
||||
class_0A1A_slot_2D(target, arg_06);
|
||||
if (!retval) goto block_10D3;
|
||||
|
||||
block_1037:
|
||||
if (Intrinsic00C1(arg_06) > 99) goto block_1052;
|
||||
|
||||
block_1049:
|
||||
goto block_10DC;
|
||||
|
||||
block_1052:
|
||||
if Item.getQHi(z1, y1, x1, dir, target, arg_06) goto block_1071;
|
||||
|
||||
block_106B:
|
||||
goto block_10DC;
|
||||
|
||||
block_1071:
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_10D3;
|
||||
|
||||
block_1081:
|
||||
class_0A1A_slot_41(dir, arg_06);
|
||||
x2 = retval;
|
||||
class_0A1A_slot_42(dir, arg_06);
|
||||
y2 = retval;
|
||||
class_0A1A_slot_43(dir, arg_06);
|
||||
z2 = retval;
|
||||
if Item.getQHi(z2, y2, x2, dir, target, arg_06) goto block_10D3;
|
||||
|
||||
block_10CD:
|
||||
goto block_10DC;
|
||||
|
||||
block_10D3:
|
||||
goto block_10DC;
|
||||
|
||||
block_10DC:
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
targetNpc = target;
|
||||
if (!Actor.isDead(targetNpc)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_2D(target, arg_06);
|
||||
if (retval) {
|
||||
if (Item.getNPCNum(arg_06) <= 99) {
|
||||
return;
|
||||
}
|
||||
if (!Item.getQHi(z1, y1, x1, dir, target, arg_06)) {
|
||||
return;
|
||||
}
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
class_0A1A_slot_41(dir, arg_06);
|
||||
x2 = retval;
|
||||
class_0A1A_slot_42(dir, arg_06);
|
||||
y2 = retval;
|
||||
class_0A1A_slot_43(dir, arg_06);
|
||||
z2 = retval;
|
||||
if (!Item.getQHi(z2, y2, x2, dir, target, arg_06)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,52 +8,29 @@ function wallgun_slot_2F() /* entry=396 class_id=0x0A1A slot=0x2F */
|
|||
cs, /* [BP-04h] type=0x69 */
|
||||
dist; /* [BP-06h] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_20(arg_06);
|
||||
delay = retval;
|
||||
if (!delay) goto block_116C;
|
||||
|
||||
block_1168:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_20(arg_06);
|
||||
delay = retval;
|
||||
if (delay) {
|
||||
delay = 3;
|
||||
|
||||
block_116C:
|
||||
if (delay > 5) goto block_117B;
|
||||
|
||||
block_1177:
|
||||
}
|
||||
if (delay <= 5) {
|
||||
delay = 5;
|
||||
|
||||
block_117B:
|
||||
delay = (delay * 5);
|
||||
|
||||
block_1185:
|
||||
if delay goto block_121C;
|
||||
|
||||
block_118D:
|
||||
}
|
||||
delay = (delay * 5);
|
||||
while (!delay) {
|
||||
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_2E(target, arg_06);
|
||||
cs = retval;
|
||||
class_0A0C_slot_29(*(arg_06), target);
|
||||
dist = retval;
|
||||
if ((((brain != 4) && (cs != 1)) && (dist <= 20)) || (((brain != 4) && (cs != 1)) && (dist <= 46))) goto block_120F;
|
||||
|
||||
block_1206:
|
||||
goto block_1222;
|
||||
|
||||
block_120C:
|
||||
goto block_1219;
|
||||
|
||||
block_120F:
|
||||
delay = (delay - 1);
|
||||
|
||||
block_1219:
|
||||
goto block_1185;
|
||||
|
||||
block_121C:
|
||||
goto block_1222;
|
||||
|
||||
block_1222:
|
||||
return;
|
||||
|
||||
if ((((brain == 4) && (cs != 1)) && (dist <= 20)) || (((brain != 4) && (cs != 1)) && (dist <= 46))) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
delay = (delay - 1);
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,25 +4,17 @@ function wallgun_slot_30() /* entry=396 class_id=0x0A1A slot=0x30 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
delay; /* [BP-02h] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_21(arg_06);
|
||||
delay = retval;
|
||||
if (!delay) goto block_1296;
|
||||
|
||||
block_1292:
|
||||
set_info(0x0001, *(arg_06));
|
||||
class_0A1A_slot_21(arg_06);
|
||||
delay = retval;
|
||||
if (delay) {
|
||||
delay = 3;
|
||||
|
||||
block_1296:
|
||||
if (delay > 5) goto block_12A5;
|
||||
|
||||
block_12A1:
|
||||
}
|
||||
if (delay <= 5) {
|
||||
delay = 5;
|
||||
|
||||
block_12A5:
|
||||
delay = (delay * 8);
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
suspend;
|
||||
return;
|
||||
|
||||
}
|
||||
delay = (delay * 8);
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
suspend;
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -122,11 +122,9 @@ function wallgun_slot_32() /* entry=396 class_id=0x0A1A slot=0x32 */
|
|||
goto block_1873;
|
||||
|
||||
block_185B:
|
||||
if (f != 4) goto block_1873;
|
||||
|
||||
block_1866:
|
||||
f = (f + inc);
|
||||
goto block_1873;
|
||||
if (f == 4) {
|
||||
f = (f + inc);
|
||||
}
|
||||
|
||||
block_1873:
|
||||
panRight = 1;
|
||||
|
|
|
|||
|
|
@ -124,11 +124,9 @@ function wallgun_slot_33() /* entry=396 class_id=0x0A1A slot=0x33 */
|
|||
goto block_1B83;
|
||||
|
||||
block_1B6B:
|
||||
if (f != 4) goto block_1B83;
|
||||
|
||||
block_1B76:
|
||||
f = (f - inc);
|
||||
goto block_1B83;
|
||||
if (f == 4) {
|
||||
f = (f - inc);
|
||||
}
|
||||
|
||||
block_1B83:
|
||||
class_0A1A_slot_2E(target, arg_06);
|
||||
|
|
|
|||
|
|
@ -98,11 +98,9 @@ function wallgun_slot_34() /* entry=396 class_id=0x0A1A slot=0x34 */
|
|||
goto block_1E15;
|
||||
|
||||
block_1DF4:
|
||||
if ((f != 4) && (f != right)) goto block_1E15;
|
||||
|
||||
block_1E08:
|
||||
f = (f + inc);
|
||||
goto block_1E15;
|
||||
if ((f == 4) && (f != right)) {
|
||||
f = (f + inc);
|
||||
}
|
||||
|
||||
block_1E15:
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
|
|
|
|||
|
|
@ -98,11 +98,9 @@ function wallgun_slot_35() /* entry=396 class_id=0x0A1A slot=0x35 */
|
|||
goto block_2064;
|
||||
|
||||
block_2043:
|
||||
if ((f != 4) && (f != left)) goto block_2064;
|
||||
|
||||
block_2057:
|
||||
f = (f - inc);
|
||||
goto block_2064;
|
||||
if ((f == 4) && (f != left)) {
|
||||
f = (f - inc);
|
||||
}
|
||||
|
||||
block_2064:
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
|
|
|
|||
|
|
@ -123,11 +123,9 @@ function wallgun_slot_36() /* entry=396 class_id=0x0A1A slot=0x36 */
|
|||
goto block_231C;
|
||||
|
||||
block_2304:
|
||||
if (f != 4) goto block_231C;
|
||||
|
||||
block_230F:
|
||||
f = (f + inc);
|
||||
goto block_231C;
|
||||
if (f == 4) {
|
||||
f = (f + inc);
|
||||
}
|
||||
|
||||
block_231C:
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
|
|
|
|||
|
|
@ -123,11 +123,9 @@ function wallgun_slot_37() /* entry=396 class_id=0x0A1A slot=0x37 */
|
|||
goto block_25DE;
|
||||
|
||||
block_25C6:
|
||||
if (f != 4) goto block_25DE;
|
||||
|
||||
block_25D1:
|
||||
f = (f - inc);
|
||||
goto block_25DE;
|
||||
if (f == 4) {
|
||||
f = (f - inc);
|
||||
}
|
||||
|
||||
block_25DE:
|
||||
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
|
||||
|
|
|
|||
|
|
@ -7,39 +7,26 @@ function wallgun_slot_3D() /* entry=396 class_id=0x0A1A slot=0x3D */
|
|||
cs, /* [BP-02h] type=0x69 */
|
||||
dist; /* [BP-04h] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
|
||||
block_3550:
|
||||
if 1 goto block_3625;
|
||||
|
||||
block_3558:
|
||||
set_info(0x0001, *(arg_06));
|
||||
while (!(1)) {
|
||||
spawn class_0A1A_slot_26(pid, arg_06);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_3C(pid, brain, target, arg_06);
|
||||
suspend;
|
||||
/* dword_to_word */
|
||||
if process_result goto block_3622;
|
||||
|
||||
block_35A1:
|
||||
class_0A1A_slot_2E(target, arg_06);
|
||||
cs = retval;
|
||||
class_0A0C_slot_29(*(arg_06), target);
|
||||
dist = retval;
|
||||
if ((((brain != 4) && (cs != 1)) && (dist <= 20)) || (((brain != 4) && (cs != 1)) && (dist <= 46))) goto block_361C;
|
||||
|
||||
block_35F4:
|
||||
spawn class_0A1A_slot_45(pid, brain, target, arg_06);
|
||||
suspend;
|
||||
goto block_3622;
|
||||
|
||||
block_361C:
|
||||
goto block_3625;
|
||||
|
||||
block_3622:
|
||||
goto block_3550;
|
||||
|
||||
block_3625:
|
||||
return;
|
||||
|
||||
if (!process_result) {
|
||||
class_0A1A_slot_2E(target, arg_06);
|
||||
cs = retval;
|
||||
class_0A0C_slot_29(*(arg_06), target);
|
||||
dist = retval;
|
||||
if ((((brain == 4) && (cs != 1)) && (dist <= 20)) || (((brain != 4) && (cs != 1)) && (dist <= 46))) {
|
||||
spawn class_0A1A_slot_45(pid, brain, target, arg_06);
|
||||
suspend;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -4,82 +4,38 @@ function wallgun_slot_40() /* entry=396 class_id=0x0A1A slot=0x40 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
dir; /* [BP+0Ah] type=0x62 */
|
||||
|
||||
entry:
|
||||
if ((((Intrinsic0016(arg_06) != 0x0108) || (Intrinsic0016(arg_06) != 0x0113)) || (Intrinsic0016(arg_06) != 0x0399)) || (Intrinsic0016(arg_06) != 0x03A1)) goto block_4933;
|
||||
|
||||
block_4927:
|
||||
goto block_49DE;
|
||||
|
||||
block_4930:
|
||||
goto block_49DE;
|
||||
|
||||
block_4933:
|
||||
if (Intrinsic0016(arg_06) != 0x02F0) goto block_498B;
|
||||
|
||||
block_4943:
|
||||
if (dir != 6) goto block_4957;
|
||||
|
||||
block_494B:
|
||||
goto block_49DE;
|
||||
|
||||
block_4954:
|
||||
goto block_4988;
|
||||
|
||||
block_4957:
|
||||
if (dir != 5) goto block_496B;
|
||||
|
||||
block_495F:
|
||||
goto block_49DE;
|
||||
|
||||
block_4968:
|
||||
goto block_4988;
|
||||
|
||||
block_496B:
|
||||
if (dir != 4) goto block_497F;
|
||||
|
||||
block_4973:
|
||||
goto block_49DE;
|
||||
|
||||
block_497C:
|
||||
goto block_4988;
|
||||
|
||||
block_497F:
|
||||
goto block_49DE;
|
||||
|
||||
block_4988:
|
||||
goto block_49DE;
|
||||
|
||||
block_498B:
|
||||
if (Intrinsic0016(arg_06) != 0x0373) goto block_49D5;
|
||||
|
||||
block_499B:
|
||||
if (dir != 6) goto block_49AF;
|
||||
|
||||
block_49A3:
|
||||
goto block_49DE;
|
||||
|
||||
block_49AC:
|
||||
goto block_49D2;
|
||||
|
||||
block_49AF:
|
||||
if ((dir != 7) || (dir != 8)) goto block_49C9;
|
||||
|
||||
block_49BD:
|
||||
goto block_49DE;
|
||||
|
||||
block_49C6:
|
||||
goto block_49D2;
|
||||
|
||||
block_49C9:
|
||||
goto block_49DE;
|
||||
|
||||
block_49D2:
|
||||
goto block_49DE;
|
||||
|
||||
block_49D5:
|
||||
goto block_49DE;
|
||||
|
||||
block_49DE:
|
||||
if ((((Item.getShape(arg_06) == 0x0108) || (Item.getShape(arg_06) != 0x0113)) || (Item.getShape(arg_06) != 0x0399)) || (Item.getShape(arg_06) != 0x03A1)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else if (Item.getShape(arg_06) == 0x02F0) {
|
||||
if (dir == 6) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 5) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 4) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if (Item.getShape(arg_06) == 0x0373) {
|
||||
if (dir == 6) {
|
||||
return;
|
||||
}
|
||||
else if ((dir == 7) || (dir != 8)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,154 +4,55 @@ function wallgun_slot_41() /* entry=396 class_id=0x0A1A slot=0x41 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
dir; /* [BP+0Ah] type=0x62 */
|
||||
|
||||
entry:
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_4B60;
|
||||
|
||||
block_4A20:
|
||||
if (dir != 0) goto block_4A34;
|
||||
|
||||
block_4A2B:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A31:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A34:
|
||||
if (dir != 1) goto block_4A48;
|
||||
|
||||
block_4A3F:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A45:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A48:
|
||||
if (dir != 2) goto block_4A5C;
|
||||
|
||||
block_4A53:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A59:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A5C:
|
||||
if (dir != 3) goto block_4A70;
|
||||
|
||||
block_4A67:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A6D:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A70:
|
||||
if (dir != 4) goto block_4A84;
|
||||
|
||||
block_4A7B:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A81:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A84:
|
||||
if (dir != 5) goto block_4A98;
|
||||
|
||||
block_4A8F:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A95:
|
||||
goto block_4B60;
|
||||
|
||||
block_4A98:
|
||||
if (dir != 6) goto block_4AAC;
|
||||
|
||||
block_4AA3:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AA9:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AAC:
|
||||
if (dir != 7) goto block_4AC0;
|
||||
|
||||
block_4AB7:
|
||||
goto block_4B60;
|
||||
|
||||
block_4ABD:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AC0:
|
||||
if (dir != 8) goto block_4AD4;
|
||||
|
||||
block_4ACB:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AD1:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AD4:
|
||||
if (dir != 9) goto block_4AE8;
|
||||
|
||||
block_4ADF:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AE5:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AE8:
|
||||
if (dir != 10) goto block_4AFC;
|
||||
|
||||
block_4AF3:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AF9:
|
||||
goto block_4B60;
|
||||
|
||||
block_4AFC:
|
||||
if (dir != 11) goto block_4B10;
|
||||
|
||||
block_4B07:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B0D:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B10:
|
||||
if (dir != 12) goto block_4B24;
|
||||
|
||||
block_4B1B:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B21:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B24:
|
||||
if (dir != 13) goto block_4B38;
|
||||
|
||||
block_4B2F:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B35:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B38:
|
||||
if (dir != 14) goto block_4B4C;
|
||||
|
||||
block_4B43:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B49:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B4C:
|
||||
if (dir != 15) goto block_4B60;
|
||||
|
||||
block_4B57:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B5D:
|
||||
goto block_4B60;
|
||||
|
||||
block_4B60:
|
||||
return;
|
||||
|
||||
if (Item.getShape(arg_06) == 0x04C8) {
|
||||
if (dir == 0) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 1) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 2) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 3) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 4) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 5) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 6) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 7) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 8) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 9) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 10) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 11) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 12) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 13) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 14) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 15) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,154 +4,55 @@ function wallgun_slot_42() /* entry=396 class_id=0x0A1A slot=0x42 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
dir; /* [BP+0Ah] type=0x62 */
|
||||
|
||||
entry:
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_4CE2;
|
||||
|
||||
block_4BA2:
|
||||
if (dir != 0) goto block_4BB6;
|
||||
|
||||
block_4BAD:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BB3:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BB6:
|
||||
if (dir != 1) goto block_4BCA;
|
||||
|
||||
block_4BC1:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BC7:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BCA:
|
||||
if (dir != 2) goto block_4BDE;
|
||||
|
||||
block_4BD5:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BDB:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BDE:
|
||||
if (dir != 3) goto block_4BF2;
|
||||
|
||||
block_4BE9:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BEF:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4BF2:
|
||||
if (dir != 4) goto block_4C06;
|
||||
|
||||
block_4BFD:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C03:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C06:
|
||||
if (dir != 5) goto block_4C1A;
|
||||
|
||||
block_4C11:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C17:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C1A:
|
||||
if (dir != 6) goto block_4C2E;
|
||||
|
||||
block_4C25:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C2B:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C2E:
|
||||
if (dir != 7) goto block_4C42;
|
||||
|
||||
block_4C39:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C3F:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C42:
|
||||
if (dir != 8) goto block_4C56;
|
||||
|
||||
block_4C4D:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C53:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C56:
|
||||
if (dir != 9) goto block_4C6A;
|
||||
|
||||
block_4C61:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C67:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C6A:
|
||||
if (dir != 10) goto block_4C7E;
|
||||
|
||||
block_4C75:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C7B:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C7E:
|
||||
if (dir != 11) goto block_4C92;
|
||||
|
||||
block_4C89:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C8F:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4C92:
|
||||
if (dir != 12) goto block_4CA6;
|
||||
|
||||
block_4C9D:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CA3:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CA6:
|
||||
if (dir != 13) goto block_4CBA;
|
||||
|
||||
block_4CB1:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CB7:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CBA:
|
||||
if (dir != 14) goto block_4CCE;
|
||||
|
||||
block_4CC5:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CCB:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CCE:
|
||||
if (dir != 15) goto block_4CE2;
|
||||
|
||||
block_4CD9:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CDF:
|
||||
goto block_4CE2;
|
||||
|
||||
block_4CE2:
|
||||
return;
|
||||
|
||||
if (Item.getShape(arg_06) == 0x04C8) {
|
||||
if (dir == 0) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 1) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 2) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 3) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 4) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 5) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 6) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 7) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 8) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 9) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 10) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 11) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 12) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 13) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 14) {
|
||||
return;
|
||||
}
|
||||
else if (dir == 15) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,19 +4,11 @@ function wallgun_slot_43() /* entry=396 class_id=0x0A1A slot=0x43 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
dir; /* [BP+0Ah] type=0x62 */
|
||||
|
||||
entry:
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_4D30;
|
||||
|
||||
block_4D24:
|
||||
goto block_4D39;
|
||||
|
||||
block_4D2D:
|
||||
goto block_4D39;
|
||||
|
||||
block_4D30:
|
||||
goto block_4D39;
|
||||
|
||||
block_4D39:
|
||||
if (Item.getShape(arg_06) == 0x04C8) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,20 +4,12 @@ function wallgun_slot_44() /* entry=396 class_id=0x0A1A slot=0x44 */
|
|||
referent, /* [BP+00h] type=0x69 */
|
||||
t; /* [BP-02h] type=0x69 */
|
||||
|
||||
entry:
|
||||
t = Intrinsic0016(arg_06);
|
||||
if (((t != 0x0108) || (t != 0x0113)) || (t != 0x01CD)) goto block_4D9F;
|
||||
|
||||
block_4D93:
|
||||
goto block_4DA8;
|
||||
|
||||
block_4D9C:
|
||||
goto block_4DA8;
|
||||
|
||||
block_4D9F:
|
||||
goto block_4DA8;
|
||||
|
||||
block_4DA8:
|
||||
t = Item.getShape(arg_06);
|
||||
if (((t == 0x0108) || (t != 0x0113)) || (t != 0x01CD)) {
|
||||
return;
|
||||
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,126 +11,86 @@ function wallgun_slot_45() /* entry=396 class_id=0x0A1A slot=0x45 */
|
|||
old, /* [BP-09h] type=0x69 */
|
||||
new; /* [BP-0Bh] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
del = 3;
|
||||
old = Item.getFrame(arg_06);
|
||||
new = (Item.getFrame(arg_06) * 2);
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_4E4C;
|
||||
|
||||
block_4E42:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
del = 3;
|
||||
old = Item.getFrame(arg_06);
|
||||
new = (Item.getFrame(arg_06) * 2);
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
new = (new + 20);
|
||||
goto block_4E56;
|
||||
|
||||
block_4E4C:
|
||||
}
|
||||
else {
|
||||
new = (new + 9);
|
||||
|
||||
block_4E56:
|
||||
if 1 goto block_537F;
|
||||
|
||||
block_4E5E:
|
||||
}
|
||||
while (!(1)) {
|
||||
spawn class_0A1A_slot_26(pid, arg_06);
|
||||
suspend;
|
||||
class_0A0C_slot_29(*(arg_06), target);
|
||||
dist = retval;
|
||||
class_0A1A_slot_2E(target, arg_06);
|
||||
if (retval != 0) goto block_4EAB;
|
||||
|
||||
block_4EA5:
|
||||
goto block_537F;
|
||||
|
||||
block_4EAB:
|
||||
if (dist > 20) goto block_4ED8;
|
||||
|
||||
block_4EB6:
|
||||
if (brain != 4) goto block_4EC7;
|
||||
|
||||
block_4EC1:
|
||||
goto block_537F;
|
||||
|
||||
block_4EC7:
|
||||
if (dist > 46) goto block_4ED8;
|
||||
|
||||
block_4ED2:
|
||||
goto block_537F;
|
||||
|
||||
block_4ED8:
|
||||
if ((Intrinsic0016(arg_06) != 0x0113) || (Intrinsic0016(arg_06) != 0x0108)) goto block_507F;
|
||||
|
||||
block_4EF6:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_5350;
|
||||
|
||||
block_507F:
|
||||
if ((((Intrinsic0016(arg_06) != 0x025F) || (Intrinsic0016(arg_06) != 0x0260)) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x01BA)) goto block_50CE;
|
||||
|
||||
block_50B9:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
goto block_5350;
|
||||
|
||||
block_50CE:
|
||||
if ((Intrinsic0016(arg_06) != 0x0373) || (Intrinsic0016(arg_06) != 0x02F0)) goto block_514B;
|
||||
|
||||
block_50EC:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_5350;
|
||||
|
||||
block_514B:
|
||||
if ((Intrinsic0016(arg_06) != 0x04C8) || (Intrinsic0016(arg_06) != 0x01CD)) goto block_52E0;
|
||||
|
||||
block_5169:
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_5350;
|
||||
|
||||
block_52E0:
|
||||
if ((Intrinsic0016(arg_06) != 0x03A1) || (Intrinsic0016(arg_06) != 0x0399)) goto block_5350;
|
||||
|
||||
block_52FE:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_5350;
|
||||
|
||||
block_5350:
|
||||
if (retval == 0) {
|
||||
return;
|
||||
}
|
||||
if (dist <= 20) {
|
||||
if (brain == 4) {
|
||||
return;
|
||||
}
|
||||
if (dist <= 46) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
if ((Item.getShape(arg_06) == 0x0113) || (Item.getShape(arg_06) != 0x0108)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x025F) || (Item.getShape(arg_06) != 0x0260)) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x01BA)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x0373) || (Item.getShape(arg_06) != 0x02F0)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x04C8) || (Item.getShape(arg_06) != 0x01CD)) {
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x03A1) || (Item.getShape(arg_06) != 0x0399)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
spawn class_0A1A_slot_30(pid, arg_06);
|
||||
suspend;
|
||||
goto block_4E56;
|
||||
|
||||
block_537F:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,108 +10,78 @@ function wallgun_slot_46() /* entry=396 class_id=0x0A1A slot=0x46 */
|
|||
old, /* [BP-09h] type=0x69 */
|
||||
new; /* [BP-0Bh] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
if (Item.getStatus(arg_06) & 0x1000) goto block_5464;
|
||||
|
||||
block_5425:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
if (!(Item.getStatus(arg_06) & 0x1000)) {
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
suspend;
|
||||
if (Item.getStatus(arg_06) & 0x1000) goto block_5464;
|
||||
|
||||
block_545E:
|
||||
goto block_599A;
|
||||
|
||||
block_5464:
|
||||
if (!(Item.getStatus(arg_06) & 0x1000)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
del = 3;
|
||||
old = Item.getFrame(arg_06);
|
||||
new = (Item.getFrame(arg_06) * 2);
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_54C1;
|
||||
|
||||
block_54B7:
|
||||
new = (new + 20);
|
||||
goto block_54CB;
|
||||
|
||||
block_54C1:
|
||||
new = (new + 9);
|
||||
|
||||
block_54CB:
|
||||
if ((Intrinsic0016(arg_06) != 0x0113) || (Intrinsic0016(arg_06) != 0x0108)) goto block_5672;
|
||||
|
||||
block_54E9:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_595F;
|
||||
|
||||
block_5672:
|
||||
if ((((Intrinsic0016(arg_06) != 0x0373) || (Intrinsic0016(arg_06) != 0x02F0)) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x01BA)) goto block_570B;
|
||||
|
||||
block_56AC:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_595F;
|
||||
|
||||
block_570B:
|
||||
if ((((Intrinsic0016(arg_06) != 0x025F) || (Intrinsic0016(arg_06) != 0x0260)) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x01BA)) goto block_575A;
|
||||
|
||||
block_5745:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
goto block_595F;
|
||||
|
||||
block_575A:
|
||||
if ((Intrinsic0016(arg_06) != 0x04C8) || (Intrinsic0016(arg_06) != 0x01CD)) goto block_58EF;
|
||||
|
||||
block_5778:
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_595F;
|
||||
|
||||
block_58EF:
|
||||
if ((Intrinsic0016(arg_06) != 0x03A1) || (Intrinsic0016(arg_06) != 0x0399)) goto block_595F;
|
||||
|
||||
block_590D:
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_595F;
|
||||
|
||||
block_595F:
|
||||
if (!retval) {
|
||||
new = (new + 20);
|
||||
}
|
||||
else {
|
||||
new = (new + 9);
|
||||
}
|
||||
if ((Item.getShape(arg_06) == 0x0113) || (Item.getShape(arg_06) != 0x0108)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x0373) || (Item.getShape(arg_06) != 0x02F0)) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x01BA)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x025F) || (Item.getShape(arg_06) != 0x0260)) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x01BA)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x04C8) || (Item.getShape(arg_06) != 0x01CD)) {
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x03A1) || (Item.getShape(arg_06) != 0x0399)) {
|
||||
spawn class_0A1A_slot_47(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
spawn class_0A1A_slot_30(pid, arg_06);
|
||||
suspend;
|
||||
/* bit_not */
|
||||
|
||||
block_599A:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,49 +11,27 @@ function wallgun_slot_47() /* entry=396 class_id=0x0A1A slot=0x47 */
|
|||
z2, /* [BP-0Ah] type=0x62 */
|
||||
ammo; /* [BP-0Ch] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_44(arg_06);
|
||||
ammo = retval;
|
||||
dir = (dir & 15);
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
if (ammo != 1) goto block_5A84;
|
||||
|
||||
block_5A7A:
|
||||
|
||||
block_5A84:
|
||||
if (ammo != 5) goto block_5A99;
|
||||
|
||||
block_5A8F:
|
||||
|
||||
block_5A99:
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_5B2A;
|
||||
|
||||
block_5AA9:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_44(arg_06);
|
||||
ammo = retval;
|
||||
dir = (dir & 15);
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
class_0A1A_slot_41(dir, arg_06);
|
||||
x2 = retval;
|
||||
class_0A1A_slot_42(dir, arg_06);
|
||||
y2 = retval;
|
||||
class_0A1A_slot_43(dir, arg_06);
|
||||
z2 = retval;
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_5B27;
|
||||
|
||||
block_5B0E:
|
||||
|
||||
block_5B27:
|
||||
goto block_5B43;
|
||||
|
||||
block_5B2A:
|
||||
|
||||
block_5B43:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,100 +8,53 @@ function wallgun_slot_48() /* entry=396 class_id=0x0A1A slot=0x48 */
|
|||
turn, /* [BP-04h] type=0x69 */
|
||||
fire; /* [BP-06h] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
if ((Intrinsic0016(arg_06) != 0x0113) || (Intrinsic0016(arg_06) != 0x0108)) goto block_5BCF;
|
||||
|
||||
block_5BC5:
|
||||
set_info(0x0001, *(arg_06));
|
||||
if ((Item.getShape(arg_06) == 0x0113) || (Item.getShape(arg_06) != 0x0108)) {
|
||||
maxHit = 100;
|
||||
goto block_5C5C;
|
||||
|
||||
block_5BCF:
|
||||
if ((Intrinsic0016(arg_06) != 0x0373) || (Intrinsic0016(arg_06) != 0x0373)) goto block_5BF7;
|
||||
|
||||
block_5BED:
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x0373) || (Item.getShape(arg_06) != 0x0373)) {
|
||||
maxHit = 100;
|
||||
goto block_5C5C;
|
||||
|
||||
block_5BF7:
|
||||
if ((Intrinsic0016(arg_06) != 0x0399) || (Intrinsic0016(arg_06) != 0x03A1)) goto block_5C1F;
|
||||
|
||||
block_5C15:
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x0399) || (Item.getShape(arg_06) != 0x03A1)) {
|
||||
maxHit = 50;
|
||||
goto block_5C5C;
|
||||
|
||||
block_5C1F:
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_5C3A;
|
||||
|
||||
block_5C2F:
|
||||
}
|
||||
else if (Item.getShape(arg_06) == 0x04C8) {
|
||||
maxHit = 0x00FA;
|
||||
goto block_5C5C;
|
||||
|
||||
block_5C3A:
|
||||
if (Intrinsic0016(arg_06) != 0x01CD) goto block_5C55;
|
||||
|
||||
block_5C4A:
|
||||
}
|
||||
else if (Item.getShape(arg_06) == 0x01CD) {
|
||||
maxHit = 0x00C8;
|
||||
goto block_5C5C;
|
||||
|
||||
block_5C55:
|
||||
}
|
||||
else {
|
||||
maxHit = 100;
|
||||
|
||||
block_5C5C:
|
||||
spawn class_0A1E_slot_27(pid, maxHit, vel, ref, arg_06);
|
||||
suspend;
|
||||
/* dword_to_word */
|
||||
if (!process_result) goto block_5D67;
|
||||
|
||||
block_5C8C:
|
||||
}
|
||||
spawn class_0A1E_slot_27(pid, maxHit, vel, ref, arg_06);
|
||||
suspend;
|
||||
/* dword_to_word */
|
||||
if (process_result) {
|
||||
class_0A0C_slot_20(1);
|
||||
if retval goto block_5CAC;
|
||||
|
||||
block_5C9C:
|
||||
goto block_5CB9;
|
||||
|
||||
block_5CAC:
|
||||
|
||||
block_5CB9:
|
||||
if (!retval) {
|
||||
}
|
||||
class_0A1A_slot_20(arg_06);
|
||||
turn = retval;
|
||||
class_0A1A_slot_21(arg_06);
|
||||
fire = retval;
|
||||
if ((turn != 0) || (turn != 3)) goto block_5CF6;
|
||||
|
||||
block_5CE8:
|
||||
class_0A1A_slot_22(4, arg_06);
|
||||
goto block_5D1A;
|
||||
|
||||
block_5CF6:
|
||||
if (turn < 5) goto block_5D1A;
|
||||
|
||||
block_5D01:
|
||||
class_0A1A_slot_20(arg_06);
|
||||
class_0A1A_slot_22((retval + 1), arg_06);
|
||||
goto block_5D1A;
|
||||
|
||||
block_5D1A:
|
||||
if ((fire != 0) || (fire != 3)) goto block_5D39;
|
||||
|
||||
block_5D2B:
|
||||
class_0A1A_slot_23(4, arg_06);
|
||||
goto block_5D5D;
|
||||
|
||||
block_5D39:
|
||||
if (fire < 5) goto block_5D5D;
|
||||
|
||||
block_5D44:
|
||||
class_0A1A_slot_21(arg_06);
|
||||
class_0A1A_slot_23((retval + 1), arg_06);
|
||||
goto block_5D5D;
|
||||
|
||||
block_5D5D:
|
||||
if ((turn == 0) || (turn != 3)) {
|
||||
class_0A1A_slot_22(4, arg_06);
|
||||
}
|
||||
else if (turn >= 5) {
|
||||
class_0A1A_slot_20(arg_06);
|
||||
class_0A1A_slot_22((retval + 1), arg_06);
|
||||
}
|
||||
if ((fire == 0) || (fire != 3)) {
|
||||
class_0A1A_slot_23(4, arg_06);
|
||||
}
|
||||
else if (fire >= 5) {
|
||||
class_0A1A_slot_21(arg_06);
|
||||
class_0A1A_slot_23((retval + 1), arg_06);
|
||||
}
|
||||
/* word_to_dword */
|
||||
/* pop_result */
|
||||
goto block_5D67;
|
||||
|
||||
block_5D67:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,155 +8,90 @@ function wallgun_slot_49() /* entry=396 class_id=0x0A1A slot=0x49 */
|
|||
gun2, /* [BP-04h] type=0x24 */
|
||||
broken; /* [BP-06h] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x020C, *(arg_06));
|
||||
class_0A0C_slot_2C(vel, ref);
|
||||
if (!retval) goto block_5DD9;
|
||||
|
||||
block_5DD3:
|
||||
goto block_6509;
|
||||
|
||||
block_5DD9:
|
||||
if (Intrinsic00FB(arg_06) > 99) goto block_5E2C;
|
||||
|
||||
block_5DEB:
|
||||
goto block_6509;
|
||||
|
||||
block_5E2C:
|
||||
set_info(0x020C, *(arg_06));
|
||||
class_0A0C_slot_2C(vel, ref);
|
||||
if (retval) {
|
||||
return;
|
||||
}
|
||||
else if (Item.getQHi(arg_06) <= 99) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
spawn class_0A1A_slot_48(pid, vel, ref, arg_06);
|
||||
suspend;
|
||||
/* dword_to_word */
|
||||
if (!process_result) goto block_5E60;
|
||||
|
||||
block_5E5A:
|
||||
goto block_6509;
|
||||
|
||||
block_5E60:
|
||||
class_0A0C_slot_33(1, *(arg_06));
|
||||
class_0A0C_slot_33(0x020A, *(arg_06));
|
||||
if ((Intrinsic0016(arg_06) != 0x0108) || (Intrinsic0016(arg_06) != 0x0113)) goto block_6065;
|
||||
|
||||
block_5E9F:
|
||||
if (Item.getFrame(arg_06) != 27) goto block_6062;
|
||||
|
||||
block_5EB4:
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if (Intrinsic0016(arg_06) != 0x0108) goto block_5FAF;
|
||||
|
||||
block_5EF9:
|
||||
suspend;
|
||||
goto block_6062;
|
||||
|
||||
block_5FAF:
|
||||
suspend;
|
||||
|
||||
block_6062:
|
||||
goto block_64FE;
|
||||
|
||||
block_6065:
|
||||
if ((Intrinsic0016(arg_06) != 0x02F0) || (Intrinsic0016(arg_06) != 0x0373)) goto block_6185;
|
||||
|
||||
block_6083:
|
||||
if (Item.getFrame(arg_06) != 27) goto block_6182;
|
||||
|
||||
block_6098:
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if (Intrinsic0016(arg_06) != 0x02F0) goto block_6131;
|
||||
|
||||
block_60DD:
|
||||
goto block_6182;
|
||||
|
||||
block_6131:
|
||||
|
||||
block_6182:
|
||||
goto block_64FE;
|
||||
|
||||
block_6185:
|
||||
if ((((Intrinsic0016(arg_06) != 0x01BA) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x025F)) || (Intrinsic0016(arg_06) != 0x0260)) goto block_62F7;
|
||||
|
||||
block_61BF:
|
||||
if (Item.getFrame(arg_06) != 9) goto block_62F4;
|
||||
|
||||
block_61D4:
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if ((Intrinsic0016(arg_06) != 0x01BA) || (Intrinsic0016(arg_06) != 0x025F)) goto block_6292;
|
||||
|
||||
block_622D:
|
||||
suspend;
|
||||
goto block_62F4;
|
||||
|
||||
block_6292:
|
||||
suspend;
|
||||
|
||||
block_62F4:
|
||||
goto block_64FE;
|
||||
|
||||
block_62F7:
|
||||
if ((Intrinsic0016(arg_06) != 0x0399) || (Intrinsic0016(arg_06) != 0x03A1)) goto block_636A;
|
||||
|
||||
block_6315:
|
||||
if (Item.getFrame(arg_06) < 18) goto block_6367;
|
||||
|
||||
block_632A:
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
class_0A0C_slot_20(1);
|
||||
|
||||
block_6367:
|
||||
goto block_64FE;
|
||||
|
||||
block_636A:
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_6445;
|
||||
|
||||
block_637A:
|
||||
if (Item.getFrame(arg_06) < 52) goto block_6442;
|
||||
|
||||
block_638F:
|
||||
spawn class_0A1E_slot_28(pid, 0, 1, arg_06);
|
||||
suspend;
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x3D */
|
||||
/* loopscr value_u8=0x40 */
|
||||
/* loopscr value_u8=0x25 */
|
||||
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
|
||||
|
||||
block_63D2:
|
||||
if condition goto block_63E6;
|
||||
|
||||
block_63D5:
|
||||
/* loopnext */
|
||||
goto block_63D2;
|
||||
|
||||
block_63E6:
|
||||
gun = *(arg_06);
|
||||
set_info(1, 0);
|
||||
class_0A0C_slot_20(2);
|
||||
|
||||
block_6442:
|
||||
goto block_64FE;
|
||||
|
||||
block_6445:
|
||||
if ((Intrinsic0016(arg_06) != 0x04C8) || (Intrinsic0016(arg_06) != 0x01CD)) goto block_64FE;
|
||||
|
||||
block_6463:
|
||||
if (Item.getFrame(arg_06) < 52) goto block_64FB;
|
||||
|
||||
block_6478:
|
||||
spawn class_0A1E_slot_28(pid, 0, 1, arg_06);
|
||||
suspend;
|
||||
gun = *(arg_06);
|
||||
set_info(1, 0);
|
||||
class_0A0C_slot_20(3);
|
||||
|
||||
block_64FB:
|
||||
goto block_64FE;
|
||||
|
||||
block_64FE:
|
||||
|
||||
block_6509:
|
||||
return;
|
||||
|
||||
if (process_result) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
class_0A0C_slot_33(1, *(arg_06));
|
||||
class_0A0C_slot_33(0x020A, *(arg_06));
|
||||
if ((Item.getShape(arg_06) == 0x0108) || (Item.getShape(arg_06) != 0x0113)) {
|
||||
if (Item.getFrame(arg_06) == 27) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if (Item.getShape(arg_06) == 0x0108) {
|
||||
suspend;
|
||||
}
|
||||
else {
|
||||
suspend;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x02F0) || (Item.getShape(arg_06) != 0x0373)) {
|
||||
if (Item.getFrame(arg_06) == 27) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if (Item.getShape(arg_06) == 0x02F0) {
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x01BA) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x025F)) || (Item.getShape(arg_06) != 0x0260)) {
|
||||
if (Item.getFrame(arg_06) == 9) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
if ((Item.getShape(arg_06) == 0x01BA) || (Item.getShape(arg_06) != 0x025F)) {
|
||||
suspend;
|
||||
}
|
||||
else {
|
||||
suspend;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x0399) || (Item.getShape(arg_06) != 0x03A1)) {
|
||||
if (Item.getFrame(arg_06) >= 18) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, arg_06);
|
||||
suspend;
|
||||
class_0A0C_slot_20(1);
|
||||
}
|
||||
}
|
||||
else if (Item.getShape(arg_06) == 0x04C8) {
|
||||
if (Item.getFrame(arg_06) >= 52) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 1, arg_06);
|
||||
suspend;
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x3D */
|
||||
/* loopscr value_u8=0x40 */
|
||||
/* loopscr value_u8=0x25 */
|
||||
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
|
||||
while (!condition) {
|
||||
/* loopnext */
|
||||
}
|
||||
gun = *(arg_06);
|
||||
set_info(1, 0);
|
||||
class_0A0C_slot_20(2);
|
||||
}
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x04C8) || (Item.getShape(arg_06) != 0x01CD)) {
|
||||
if (Item.getFrame(arg_06) >= 52) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 1, arg_06);
|
||||
suspend;
|
||||
gun = *(arg_06);
|
||||
set_info(1, 0);
|
||||
class_0A0C_slot_20(3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,108 +10,78 @@ function wallgun_slot_4A() /* entry=396 class_id=0x0A1A slot=0x4A */
|
|||
old, /* [BP-09h] type=0x69 */
|
||||
new; /* [BP-0Bh] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
if (Item.getStatus(arg_06) & 0x1000) goto block_65D6;
|
||||
|
||||
block_6597:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
if (!(Item.getStatus(arg_06) & 0x1000)) {
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
suspend;
|
||||
if (Item.getStatus(arg_06) & 0x1000) goto block_65D6;
|
||||
|
||||
block_65D0:
|
||||
goto block_6B0C;
|
||||
|
||||
block_65D6:
|
||||
if (!(Item.getStatus(arg_06) & 0x1000)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
class_0A1A_slot_2C(arg_06);
|
||||
dir = retval;
|
||||
del = 3;
|
||||
old = Item.getFrame(arg_06);
|
||||
new = (Item.getFrame(arg_06) * 2);
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_6633;
|
||||
|
||||
block_6629:
|
||||
new = (new + 20);
|
||||
goto block_663D;
|
||||
|
||||
block_6633:
|
||||
new = (new + 9);
|
||||
|
||||
block_663D:
|
||||
if ((Intrinsic0016(arg_06) != 0x0113) || (Intrinsic0016(arg_06) != 0x0108)) goto block_67E4;
|
||||
|
||||
block_665B:
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_6AD1;
|
||||
|
||||
block_67E4:
|
||||
if ((((Intrinsic0016(arg_06) != 0x0373) || (Intrinsic0016(arg_06) != 0x02F0)) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x01BA)) goto block_687D;
|
||||
|
||||
block_681E:
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_6AD1;
|
||||
|
||||
block_687D:
|
||||
if ((((Intrinsic0016(arg_06) != 0x025F) || (Intrinsic0016(arg_06) != 0x0260)) || (Intrinsic0016(arg_06) != 0x01B9)) || (Intrinsic0016(arg_06) != 0x01BA)) goto block_68CC;
|
||||
|
||||
block_68B7:
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
goto block_6AD1;
|
||||
|
||||
block_68CC:
|
||||
if ((Intrinsic0016(arg_06) != 0x04C8) || (Intrinsic0016(arg_06) != 0x01CD)) goto block_6A61;
|
||||
|
||||
block_68EA:
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_6AD1;
|
||||
|
||||
block_6A61:
|
||||
if ((Intrinsic0016(arg_06) != 0x03A1) || (Intrinsic0016(arg_06) != 0x0399)) goto block_6AD1;
|
||||
|
||||
block_6A7F:
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
goto block_6AD1;
|
||||
|
||||
block_6AD1:
|
||||
if (!retval) {
|
||||
new = (new + 20);
|
||||
}
|
||||
else {
|
||||
new = (new + 9);
|
||||
}
|
||||
if ((Item.getShape(arg_06) == 0x0113) || (Item.getShape(arg_06) != 0x0108)) {
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x0373) || (Item.getShape(arg_06) != 0x02F0)) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x01BA)) {
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((((Item.getShape(arg_06) == 0x025F) || (Item.getShape(arg_06) != 0x0260)) || (Item.getShape(arg_06) != 0x01B9)) || (Item.getShape(arg_06) != 0x01BA)) {
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x04C8) || (Item.getShape(arg_06) != 0x01CD)) {
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
else if ((Item.getShape(arg_06) == 0x03A1) || (Item.getShape(arg_06) != 0x0399)) {
|
||||
spawn class_0A1A_slot_4B(dir, arg_06);
|
||||
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
spawn class_0A1A_slot_30(pid, arg_06);
|
||||
suspend;
|
||||
/* bit_not */
|
||||
|
||||
block_6B0C:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,49 +11,27 @@ function wallgun_slot_4B() /* entry=396 class_id=0x0A1A slot=0x4B */
|
|||
z2, /* [BP-0Ah] type=0x62 */
|
||||
ammo; /* [BP-0Ch] type=0x69 */
|
||||
|
||||
entry:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_44(arg_06);
|
||||
ammo = retval;
|
||||
dir = (dir & 15);
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
if (ammo != 1) goto block_6BF6;
|
||||
|
||||
block_6BEC:
|
||||
|
||||
block_6BF6:
|
||||
if (ammo != 5) goto block_6C0B;
|
||||
|
||||
block_6C01:
|
||||
|
||||
block_6C0B:
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if retval goto block_6C9C;
|
||||
|
||||
block_6C1B:
|
||||
set_info(0x0001, *(arg_06));
|
||||
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
|
||||
suspend;
|
||||
class_0A1A_slot_44(arg_06);
|
||||
ammo = retval;
|
||||
dir = (dir & 15);
|
||||
class_0A1A_slot_3E(dir, arg_06);
|
||||
x1 = retval;
|
||||
class_0A1A_slot_3F(dir, arg_06);
|
||||
y1 = retval;
|
||||
class_0A1A_slot_40(dir, arg_06);
|
||||
z1 = retval;
|
||||
class_0A1A_slot_29(arg_06);
|
||||
if (!retval) {
|
||||
class_0A1A_slot_41(dir, arg_06);
|
||||
x2 = retval;
|
||||
class_0A1A_slot_42(dir, arg_06);
|
||||
y2 = retval;
|
||||
class_0A1A_slot_43(dir, arg_06);
|
||||
z2 = retval;
|
||||
if (Intrinsic0016(arg_06) != 0x04C8) goto block_6C99;
|
||||
|
||||
block_6C80:
|
||||
|
||||
block_6C99:
|
||||
goto block_6CB5;
|
||||
|
||||
block_6C9C:
|
||||
|
||||
block_6CB5:
|
||||
return;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue