This commit is contained in:
MaddoScientisto 2026-03-25 23:32:36 +01:00
commit f92d1504fa
547 changed files with 37597 additions and 0 deletions

View file

@ -0,0 +1,20 @@
function wallgun_slot_20() /* entry=396 class_id=0x0A1A slot=0x20 */
{
var
referent, /* [BP+00h] type=0x69 */
num; /* [BP-02h] type=0x69 */
entry:
num = Intrinsic00FB(arg_06);
if (num > 99) goto block_020D;
block_0203:
num = (num - 100);
block_020D:
goto block_0219;
block_0219:
return;
}

View file

@ -0,0 +1,21 @@
function wallgun_slot_21() /* entry=396 class_id=0x0A1A slot=0x21 */
{
var
referent, /* [BP+00h] type=0x69 */
num; /* [BP-02h] type=0x69 */
entry:
num = Intrinsic00FB(arg_06);
if (num > 99) goto block_0265;
block_025B:
num = (num - 100);
block_0265:
/* mod */
goto block_0271;
block_0271:
return;
}

View file

@ -0,0 +1,7 @@
function wallgun_slot_22() /* entry=396 class_id=0x0A1A slot=0x22 */
{
entry:
class_0A1A_slot_21(arg_0A, arg_06);
return;
}

View file

@ -0,0 +1,7 @@
function wallgun_slot_23() /* entry=396 class_id=0x0A1A slot=0x23 */
{
entry:
class_0A1A_slot_20((arg_0A * 10), arg_06);
return;
}

View file

@ -0,0 +1,49 @@
function wallgun_slot_24() /* entry=396 class_id=0x0A1A slot=0x24 */
{
var
referent, /* [BP+00h] type=0x69 */
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:
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;
}

View file

@ -0,0 +1,65 @@
function wallgun_slot_25() /* entry=396 class_id=0x0A1A slot=0x25 */
{
var
referent, /* [BP+00h] type=0x69 */
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:
return;
}

View file

@ -0,0 +1,17 @@
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:
spawn class_0A0C_slot_32(pid, 20, 0x00000000);
suspend;
goto block_0536;
block_0577:
return;
}

View file

@ -0,0 +1,43 @@
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:
return;
}

View file

@ -0,0 +1,246 @@
function wallgun_slot_28() /* entry=396 class_id=0x0A1A slot=0x28 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
h, /* [BP-02h] type=0x69 */
delay; /* [BP-04h] type=0x69 */
entry:
set_info(0x020A, *(arg_06));
if (brain > 99) goto block_06ED;
block_06E3:
brain = (brain - 100);
block_06ED:
h = Intrinsic00FB(arg_06);
if (h != 0) goto block_0713;
block_0706:
block_0713:
if (((h != 99) || (h != 0x00C7)) || (brain != 6)) goto block_0734;
block_072E:
goto block_0BFE;
block_0734:
class_0A1A_slot_25(Item.getFrame(arg_06), Intrinsic0016(arg_06), arg_06);
if (retval != 1) goto block_075F;
block_0759:
goto block_0BFE;
block_075F:
if 1 goto block_0BFE;
block_0767:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
if (brain != 7) goto block_07B0;
block_078E:
spawn class_0A1A_slot_36(pid, arg_06);
suspend;
goto block_0BD5;
block_07B0:
if (brain != 9) goto block_07DA;
block_07B8:
spawn class_0A1A_slot_37(pid, arg_06);
suspend;
goto block_0BD5;
block_07DA:
if (brain != 8) goto block_0808;
block_07E2:
spawn class_0A1A_slot_32(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0808:
if (brain != 10) goto block_0836;
block_0810:
spawn class_0A1A_slot_33(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0836:
if (brain != 11) goto block_0900;
block_083E:
if 1 goto block_08FD;
block_0846:
if (Item.pop() != 0) goto block_0864;
block_0857:
target = Item.pop();
goto block_086B;
block_0864:
target = 1;
block_086B:
spawn class_0A1A_slot_3C(pid, brain, target, arg_06);
suspend;
spawn class_0A1A_slot_2F(pid, brain, target, arg_06);
suspend;
spawn class_0A0C_slot_32(pid, 3, 0x00000000);
suspend;
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
goto block_083E;
block_08FD:
goto block_0BD5;
block_0900:
if (brain != 1) goto block_0955;
block_0908:
if (Item.pop() != 0) goto block_0926;
block_0919:
target = Item.pop();
goto block_092D;
block_0926:
target = 1;
block_092D:
spawn class_0A1A_slot_3D(pid, brain, target, arg_06);
suspend;
goto block_0BD5;
block_0955:
if (brain != 2) goto block_0A04;
block_095D:
if 1 goto block_09DC;
block_0965:
if (Item.pop() != 0) goto block_0983;
block_0976:
target = Item.pop();
goto block_098A;
block_0983:
target = 1;
block_098A:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
spawn class_0A1A_slot_31(pid, brain, target, arg_06);
suspend;
/* dword_to_word */
if process_result goto block_09D9;
block_09D3:
goto block_09DC;
block_09D9:
goto block_095D;
block_09DC:
spawn class_0A1A_slot_3D(pid, brain, target, arg_06);
suspend;
goto block_0BD5;
block_0A04:
if (brain != 5) goto block_0A35;
block_0A0C:
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
suspend;
goto block_0BD5;
block_0A35:
if (brain != 12) goto block_0A63;
block_0A3D:
spawn class_0A1A_slot_38(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0A63:
if (brain != 13) goto block_0A91;
block_0A6B:
spawn class_0A1A_slot_39(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0A91:
if (brain != 14) goto block_0ABF;
block_0A99:
spawn class_0A1A_slot_3A(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0ABF:
if (brain != 15) goto block_0AED;
block_0AC7:
spawn class_0A1A_slot_3B(pid, target, arg_06);
suspend;
goto block_0BD5;
block_0AED:
if (Item.pop() != 0) goto block_0B0B;
block_0AFE:
target = Item.pop();
goto block_0B12;
block_0B0B:
target = 1;
block_0B12:
spawn class_0A1A_slot_31(pid, brain, target, arg_06);
suspend;
/* dword_to_word */
if process_result goto block_0B64;
block_0B3C:
spawn class_0A1A_slot_3D(pid, brain, target, arg_06);
suspend;
goto block_0BD5;
block_0B64:
class_0A1A_slot_20(arg_06);
delay = retval;
if (delay != 0) goto block_0B82;
block_0B7E:
delay = 3;
block_0B82:
if (delay > 5) goto block_0B91;
block_0B8D:
delay = 5;
block_0B91:
delay = (delay - 1);
delay = (delay * 30);
delay = (delay + 120);
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
block_0BD5:
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_075F;
block_0BFE:
return;
}

View file

@ -0,0 +1,20 @@
function wallgun_slot_29() /* entry=396 class_id=0x0A1A slot=0x29 */
{
var
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:
return;
}

View file

@ -0,0 +1,17 @@
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:
return;
}

View file

@ -0,0 +1,20 @@
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:
return;
}

View file

@ -0,0 +1,31 @@
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:
return;
}

View file

@ -0,0 +1,98 @@
function wallgun_slot_2D() /* entry=396 class_id=0x0A1A slot=0x2D */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
targItem, /* [BP-02h] type=0x24 */
coordToCoordDir, /* [BP-04h] type=0x69 */
left, /* [BP-06h] type=0x69 */
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:
return;
}

View file

@ -0,0 +1,68 @@
function wallgun_slot_2E() /* entry=396 class_id=0x0A1A slot=0x2E */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
x1, /* [BP-02h] type=0x69 */
x2, /* [BP-04h] type=0x69 */
y1, /* [BP-06h] type=0x69 */
y2, /* [BP-08h] type=0x69 */
z1, /* [BP-09h] type=0x62 */
z2, /* [BP-0Ah] type=0x62 */
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:
return;
}

View file

@ -0,0 +1,59 @@
function wallgun_slot_2F() /* entry=396 class_id=0x0A1A slot=0x2F */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
delay, /* [BP-02h] type=0x69 */
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:
delay = 3;
block_116C:
if (delay > 5) goto block_117B;
block_1177:
delay = 5;
block_117B:
delay = (delay * 5);
block_1185:
if delay goto block_121C;
block_118D:
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;
}

View file

@ -0,0 +1,28 @@
function wallgun_slot_30() /* entry=396 class_id=0x0A1A slot=0x30 */
{
var
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:
delay = 3;
block_1296:
if (delay > 5) goto block_12A5;
block_12A1:
delay = 5;
block_12A5:
delay = (delay * 8);
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
return;
}

View file

@ -0,0 +1,200 @@
function wallgun_slot_31() /* entry=396 class_id=0x0A1A slot=0x31 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret; /* [BP-0Bh] type=0x62 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_134E;
block_1336:
inc = 1;
left = 0;
right = 15;
goto block_138B;
block_134E:
class_0A1A_slot_2B(arg_06);
if retval goto block_1376;
block_135E:
inc = 1;
left = 0;
right = 8;
goto block_138B;
block_1376:
inc = -1;
left = 8;
right = 0;
block_138B:
class_0A1A_slot_2E(target, arg_06);
if retval goto block_13E5;
block_139D:
if (brain != 4) goto block_13BB;
block_13AE:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_13B8:
goto block_13E5;
block_13BB:
class_0A0C_slot_29(target, *(arg_06));
if (retval <= 20) goto block_13E5;
block_13D8:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_13E2:
goto block_13E5;
block_13E5:
if 1 goto block_15FA;
block_13ED:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_145F;
block_1425:
if (f > 19) goto block_145C;
block_1430:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_13E5;
block_145C:
goto block_1499;
block_145F:
if (f > 8) goto block_1499;
block_146A:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_13E5;
block_1496:
goto block_1499;
block_1499:
if panRight goto block_14CF;
block_14A1:
if (f != right) goto block_14C2;
block_14B2:
panRight = 0;
goto block_13E5;
block_14BF:
goto block_14CC;
block_14C2:
f = (f + inc);
block_14CC:
goto block_155E;
block_14CF:
if ((panLeft != 1) && (isTurret != 0)) goto block_1511;
block_14E3:
if (f != left) goto block_1504;
block_14F4:
panLeft = 0;
goto block_13E5;
block_1501:
goto block_150E;
block_1504:
f = (f - inc);
block_150E:
goto block_155E;
block_1511:
if (isTurret != 1) goto block_153C;
block_1522:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_1539:
goto block_155E;
block_153C:
if (f != 4) goto block_1554;
block_1547:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_1551:
goto block_155E;
block_1554:
f = (f + inc);
block_155E:
spawn class_0A1A_slot_2F(pid, brain, target, arg_06);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_15F7;
block_15AF:
if (brain != 4) goto block_15CD;
block_15C0:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_15CA:
goto block_15F7;
block_15CD:
class_0A0C_slot_29(target, *(arg_06));
if (retval <= 20) goto block_15F7;
block_15EA:
/* word_to_dword */
/* pop_result */
goto block_15FA;
block_15F4:
goto block_15F7;
block_15F7:
goto block_13E5;
block_15FA:
return;
}

View file

@ -0,0 +1,151 @@
function wallgun_slot_32() /* entry=396 class_id=0x0A1A slot=0x32 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_16C5;
block_16AD:
inc = 1;
left = 0;
right = 15;
goto block_1702;
block_16C5:
class_0A1A_slot_2B(arg_06);
if retval goto block_16ED;
block_16D5:
inc = 1;
left = 0;
right = 8;
goto block_1702;
block_16ED:
inc = -1;
left = 8;
right = 0;
block_1702:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_1714:
if 1 goto block_18F9;
block_171C:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_178E;
block_1754:
if (f > 19) goto block_178B;
block_175F:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1714;
block_178B:
goto block_17C8;
block_178E:
if (f > 8) goto block_17C8;
block_1799:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1714;
block_17C5:
goto block_17C8;
block_17C8:
if panRight goto block_17FE;
block_17D0:
if (f != right) goto block_17F1;
block_17E1:
panRight = 0;
goto block_1714;
block_17EE:
goto block_17FB;
block_17F1:
f = (f + inc);
block_17FB:
goto block_1881;
block_17FE:
if ((panLeft != 1) && (isTurret != 0)) goto block_1840;
block_1812:
if (f != left) goto block_1833;
block_1823:
panLeft = 0;
goto block_1714;
block_1830:
goto block_183D;
block_1833:
f = (f - inc);
block_183D:
goto block_1881;
block_1840:
if (isTurret != 1) goto block_185B;
block_1851:
f = left;
goto block_1873;
block_185B:
if (f != 4) goto block_1873;
block_1866:
f = (f + inc);
goto block_1873;
block_1873:
panRight = 1;
panLeft = 1;
block_1881:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_18F6;
block_18D3:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_18F6:
goto block_1714;
block_18F9:
return;
}

View file

@ -0,0 +1,149 @@
function wallgun_slot_33() /* entry=396 class_id=0x0A1A slot=0x33 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_19C4;
block_19AC:
inc = 1;
left = 0;
right = 15;
goto block_1A01;
block_19C4:
class_0A1A_slot_2B(arg_06);
if retval goto block_19EC;
block_19D4:
inc = 1;
left = 0;
right = 8;
goto block_1A01;
block_19EC:
inc = -1;
left = 8;
right = 0;
block_1A01:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_1A13:
if 1 goto block_1BFB;
block_1A1B:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_1A8D;
block_1A53:
if (f > 19) goto block_1A8A;
block_1A5E:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1A13;
block_1A8A:
goto block_1AC7;
block_1A8D:
if (f > 8) goto block_1AC7;
block_1A98:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1A13;
block_1AC4:
goto block_1AC7;
block_1AC7:
if (panLeft != 1) goto block_1B00;
block_1AD2:
if (f != left) goto block_1AF3;
block_1AE3:
panLeft = 0;
goto block_1A13;
block_1AF0:
goto block_1AFD;
block_1AF3:
f = (f - inc);
block_1AFD:
goto block_1B83;
block_1B00:
if ((panRight != 1) && (isTurret != 0)) goto block_1B42;
block_1B14:
if (f != right) goto block_1B35;
block_1B25:
panRight = 0;
goto block_1A13;
block_1B32:
goto block_1B3F;
block_1B35:
f = (f + inc);
block_1B3F:
goto block_1B83;
block_1B42:
panRight = 1;
panLeft = 1;
if (isTurret != 1) goto block_1B6B;
block_1B61:
f = right;
goto block_1B83;
block_1B6B:
if (f != 4) goto block_1B83;
block_1B76:
f = (f - inc);
goto block_1B83;
block_1B83:
class_0A1A_slot_2E(target, arg_06);
if retval goto block_1BD2;
block_1BAF:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_1BD2:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
goto block_1A13;
block_1BFB:
return;
}

View file

@ -0,0 +1,118 @@
function wallgun_slot_34() /* entry=396 class_id=0x0A1A slot=0x34 */
{
var
referent, /* [BP+00h] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
isTurret, /* [BP-0Ah] type=0x62 */
delay; /* [BP-0Ch] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_1CBF;
block_1CA7:
inc = 1;
left = 0;
right = 15;
goto block_1CFC;
block_1CBF:
class_0A1A_slot_2B(arg_06);
if retval goto block_1CE7;
block_1CCF:
inc = 1;
left = 0;
right = 8;
goto block_1CFC;
block_1CE7:
inc = -1;
left = 8;
right = 0;
block_1CFC:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_1D0E:
if 1 goto block_1E5E;
block_1D16:
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_1D69;
block_1D2F:
if (f > 19) goto block_1D66;
block_1D3A:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1D0E;
block_1D66:
goto block_1DA3;
block_1D69:
if (f > 8) goto block_1DA3;
block_1D74:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1D0E;
block_1DA0:
goto block_1DA3;
block_1DA3:
if panRight goto block_1DD9;
block_1DAB:
if (f != right) goto block_1DCC;
block_1DBC:
panRight = 0;
goto block_1D0E;
block_1DC9:
goto block_1DD6;
block_1DCC:
f = (f + inc);
block_1DD6:
goto block_1E15;
block_1DD9:
if (isTurret != 1) goto block_1DF4;
block_1DEA:
f = left;
goto block_1E15;
block_1DF4:
if ((f != 4) && (f != right)) goto block_1E15;
block_1E08:
f = (f + inc);
goto block_1E15;
block_1E15:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
goto block_1E5E;
block_1E5B:
goto block_1D0E;
block_1E5E:
return;
}

View file

@ -0,0 +1,118 @@
function wallgun_slot_35() /* entry=396 class_id=0x0A1A slot=0x35 */
{
var
referent, /* [BP+00h] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panLeft, /* [BP-09h] type=0x62 */
isTurret, /* [BP-0Ah] type=0x62 */
delay; /* [BP-0Ch] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_1F0B;
block_1EF3:
inc = 1;
left = 0;
right = 15;
goto block_1F48;
block_1F0B:
class_0A1A_slot_2B(arg_06);
if retval goto block_1F33;
block_1F1B:
inc = 1;
left = 0;
right = 8;
goto block_1F48;
block_1F33:
inc = -1;
left = 8;
right = 0;
block_1F48:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_1F5A:
if 1 goto block_20AD;
block_1F62:
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_1FB5;
block_1F7B:
if (f > 19) goto block_1FB2;
block_1F86:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1F5A;
block_1FB2:
goto block_1FEF;
block_1FB5:
if (f > 8) goto block_1FEF;
block_1FC0:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_1F5A;
block_1FEC:
goto block_1FEF;
block_1FEF:
if (panLeft != 1) goto block_2028;
block_1FFA:
if (f != left) goto block_201B;
block_200B:
panLeft = 0;
goto block_1F5A;
block_2018:
goto block_2025;
block_201B:
f = (f - inc);
block_2025:
goto block_2064;
block_2028:
if (isTurret != 1) goto block_2043;
block_2039:
f = right;
goto block_2064;
block_2043:
if ((f != 4) && (f != left)) goto block_2064;
block_2057:
f = (f - inc);
goto block_2064;
block_2064:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
goto block_20AD;
block_20AA:
goto block_1F5A;
block_20AD:
return;
}

View file

@ -0,0 +1,140 @@
function wallgun_slot_36() /* entry=396 class_id=0x0A1A slot=0x36 */
{
var
referent, /* [BP+00h] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_2160;
block_2148:
inc = 1;
left = 0;
right = 15;
goto block_219D;
block_2160:
class_0A1A_slot_2B(arg_06);
if retval goto block_2188;
block_2170:
inc = 1;
left = 0;
right = 8;
goto block_219D;
block_2188:
inc = -1;
left = 8;
right = 0;
block_219D:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_21AF:
if 1 goto block_235F;
block_21B7:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_2229;
block_21EF:
if (f > 19) goto block_2226;
block_21FA:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_21AF;
block_2226:
goto block_2263;
block_2229:
if (f > 8) goto block_2263;
block_2234:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_21AF;
block_2260:
goto block_2263;
block_2263:
if panRight goto block_2299;
block_226B:
if (f != right) goto block_228C;
block_227C:
panRight = 0;
goto block_21AF;
block_2289:
goto block_2296;
block_228C:
f = (f + inc);
block_2296:
goto block_231C;
block_2299:
if ((panLeft != 1) && (isTurret != 0)) goto block_22DB;
block_22AD:
if (f != left) goto block_22CE;
block_22BE:
panLeft = 0;
goto block_21AF;
block_22CB:
goto block_22D8;
block_22CE:
f = (f - inc);
block_22D8:
goto block_231C;
block_22DB:
panRight = 1;
panLeft = 1;
if (isTurret != 1) goto block_2304;
block_22FA:
f = left;
goto block_231C;
block_2304:
if (f != 4) goto block_231C;
block_230F:
f = (f + inc);
goto block_231C;
block_231C:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
goto block_21AF;
block_235F:
return;
}

View file

@ -0,0 +1,140 @@
function wallgun_slot_37() /* entry=396 class_id=0x0A1A slot=0x37 */
{
var
referent, /* [BP+00h] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_241F;
block_2407:
inc = 1;
left = 0;
right = 15;
goto block_245C;
block_241F:
class_0A1A_slot_2B(arg_06);
if retval goto block_2447;
block_242F:
inc = 1;
left = 0;
right = 8;
goto block_245C;
block_2447:
inc = -1;
left = 8;
right = 0;
block_245C:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_246E:
if 1 goto block_2621;
block_2476:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_24E8;
block_24AE:
if (f > 19) goto block_24E5;
block_24B9:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_246E;
block_24E5:
goto block_2522;
block_24E8:
if (f > 8) goto block_2522;
block_24F3:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_246E;
block_251F:
goto block_2522;
block_2522:
if (panLeft != 1) goto block_255B;
block_252D:
if (f != left) goto block_254E;
block_253E:
panLeft = 0;
goto block_246E;
block_254B:
goto block_2558;
block_254E:
f = (f - inc);
block_2558:
goto block_25DE;
block_255B:
if ((panRight != 1) && (isTurret != 0)) goto block_259D;
block_256F:
if (f != right) goto block_2590;
block_2580:
panRight = 0;
goto block_246E;
block_258D:
goto block_259A;
block_2590:
f = (f + inc);
block_259A:
goto block_25DE;
block_259D:
panRight = 1;
panLeft = 1;
if (isTurret != 1) goto block_25C6;
block_25BC:
f = right;
goto block_25DE;
block_25C6:
if (f != 4) goto block_25DE;
block_25D1:
f = (f - inc);
goto block_25DE;
block_25DE:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
goto block_246E;
block_2621:
return;
}

View file

@ -0,0 +1,143 @@
function wallgun_slot_38() /* entry=396 class_id=0x0A1A slot=0x38 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_26E1;
block_26C9:
inc = 1;
left = 4;
right = 12;
goto block_271E;
block_26E1:
class_0A1A_slot_2B(arg_06);
if retval goto block_2709;
block_26F1:
inc = 1;
left = 0;
right = 8;
goto block_271E;
block_2709:
inc = -1;
left = 8;
right = 0;
block_271E:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_2730:
if 1 goto block_28EE;
block_2738:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_27AA;
block_2770:
if (f > 19) goto block_27A7;
block_277B:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2730;
block_27A7:
goto block_27E4;
block_27AA:
if (f > 8) goto block_27E4;
block_27B5:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2730;
block_27E1:
goto block_27E4;
block_27E4:
if panRight goto block_281A;
block_27EC:
if (f != right) goto block_280D;
block_27FD:
panRight = 0;
goto block_2730;
block_280A:
goto block_2817;
block_280D:
f = (f + inc);
block_2817:
goto block_2876;
block_281A:
if (panLeft != 1) goto block_2853;
block_2825:
if (f != left) goto block_2846;
block_2836:
panLeft = 0;
goto block_2730;
block_2843:
goto block_2850;
block_2846:
f = (f - inc);
block_2850:
goto block_2876;
block_2853:
if (f != 4) goto block_2868;
block_285E:
f = (f + inc);
block_2868:
panRight = 1;
panLeft = 1;
block_2876:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_28EB;
block_28C8:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_28EB:
goto block_2730;
block_28EE:
return;
}

View file

@ -0,0 +1,143 @@
function wallgun_slot_39() /* entry=396 class_id=0x0A1A slot=0x39 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_29B9;
block_29A1:
inc = 1;
left = 0;
right = 8;
goto block_29F6;
block_29B9:
class_0A1A_slot_2B(arg_06);
if retval goto block_29E1;
block_29C9:
inc = 1;
left = 0;
right = 8;
goto block_29F6;
block_29E1:
inc = -1;
left = 8;
right = 0;
block_29F6:
class_0A1A_slot_20(arg_06);
delay = (retval * 5);
block_2A08:
if 1 goto block_2BC6;
block_2A10:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_2A82;
block_2A48:
if (f > 19) goto block_2A7F;
block_2A53:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2A08;
block_2A7F:
goto block_2ABC;
block_2A82:
if (f > 8) goto block_2ABC;
block_2A8D:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2A08;
block_2AB9:
goto block_2ABC;
block_2ABC:
if panRight goto block_2AF2;
block_2AC4:
if (f != right) goto block_2AE5;
block_2AD5:
panRight = 0;
goto block_2A08;
block_2AE2:
goto block_2AEF;
block_2AE5:
f = (f + inc);
block_2AEF:
goto block_2B4E;
block_2AF2:
if (panLeft != 1) goto block_2B2B;
block_2AFD:
if (f != left) goto block_2B1E;
block_2B0E:
panLeft = 0;
goto block_2A08;
block_2B1B:
goto block_2B28;
block_2B1E:
f = (f - inc);
block_2B28:
goto block_2B4E;
block_2B2B:
if (f != 4) goto block_2B40;
block_2B36:
f = (f + inc);
block_2B40:
panRight = 1;
panLeft = 1;
block_2B4E:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_2BC3;
block_2BA0:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_2BC3:
goto block_2A08;
block_2BC6:
return;
}

View file

@ -0,0 +1,147 @@
function wallgun_slot_3A() /* entry=396 class_id=0x0A1A slot=0x3A */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_2C91;
block_2C79:
inc = 1;
left = 8;
right = 12;
goto block_2CCE;
block_2C91:
class_0A1A_slot_2B(arg_06);
if retval goto block_2CB9;
block_2CA1:
inc = 1;
left = 0;
right = 8;
goto block_2CCE;
block_2CB9:
inc = -1;
left = 8;
right = 0;
block_2CCE:
class_0A1A_slot_20(arg_06);
delay = (retval * 15);
block_2CE0:
if 1 goto block_2EEA;
block_2CE8:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_2D5A;
block_2D20:
if (f > 19) goto block_2D57;
block_2D2B:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2CE0;
block_2D57:
goto block_2D94;
block_2D5A:
if (f > 8) goto block_2D94;
block_2D65:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_2CE0;
block_2D91:
goto block_2D94;
block_2D94:
if panRight goto block_2DF0;
block_2D9C:
if (f != right) goto block_2DE3;
block_2DAD:
panRight = 0;
spawn class_0A0C_slot_32(pid, 20, 0x00000000);
suspend;
goto block_2CE0;
block_2DE0:
goto block_2DED;
block_2DE3:
f = (f + inc);
block_2DED:
goto block_2E72;
block_2DF0:
if (panLeft != 1) goto block_2E4F;
block_2DFB:
if (f != left) goto block_2E42;
block_2E0C:
panLeft = 0;
spawn class_0A0C_slot_32(pid, 20, 0x00000000);
suspend;
goto block_2CE0;
block_2E3F:
goto block_2E4C;
block_2E42:
f = (f - inc);
block_2E4C:
goto block_2E72;
block_2E4F:
if (f != 4) goto block_2E64;
block_2E5A:
f = (f + inc);
block_2E64:
panRight = 1;
panLeft = 1;
block_2E72:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_2EE7;
block_2EC4:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_2EE7:
goto block_2CE0;
block_2EEA:
return;
}

View file

@ -0,0 +1,147 @@
function wallgun_slot_3B() /* entry=396 class_id=0x0A1A slot=0x3B */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
left, /* [BP-02h] type=0x69 */
right, /* [BP-04h] type=0x69 */
inc, /* [BP-06h] type=0x69 */
f, /* [BP-08h] type=0x69 */
panRight, /* [BP-09h] type=0x62 */
panLeft, /* [BP-0Ah] type=0x62 */
isTurret, /* [BP-0Bh] type=0x62 */
delay; /* [BP-0Dh] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
panRight = 1;
panLeft = 1;
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_2FB5;
block_2F9D:
inc = 1;
left = 4;
right = 8;
goto block_2FF2;
block_2FB5:
class_0A1A_slot_2B(arg_06);
if retval goto block_2FDD;
block_2FC5:
inc = 1;
left = 0;
right = 8;
goto block_2FF2;
block_2FDD:
inc = -1;
left = 8;
right = 0;
block_2FF2:
class_0A1A_slot_20(arg_06);
delay = (retval * 15);
block_3004:
if 1 goto block_3214;
block_300C:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_307E;
block_3044:
if (f > 19) goto block_307B;
block_304F:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_3004;
block_307B:
goto block_30B8;
block_307E:
if (f > 8) goto block_30B8;
block_3089:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_3004;
block_30B5:
goto block_30B8;
block_30B8:
if panRight goto block_3117;
block_30C0:
if (f != right) goto block_310A;
block_30D1:
panRight = 0;
spawn class_0A0C_slot_32(pid, (delay + 20), 0x00000000);
suspend;
goto block_3004;
block_3107:
goto block_3114;
block_310A:
f = (f + inc);
block_3114:
goto block_319C;
block_3117:
if (panLeft != 1) goto block_3179;
block_3122:
if (f != left) goto block_316C;
block_3133:
panLeft = 0;
spawn class_0A0C_slot_32(pid, (delay + 20), 0x00000000);
suspend;
goto block_3004;
block_3169:
goto block_3176;
block_316C:
f = (f - inc);
block_3176:
goto block_319C;
block_3179:
if (f != 4) goto block_318E;
block_3184:
f = (f + inc);
block_318E:
panRight = 1;
panLeft = 1;
block_319C:
spawn class_0A0C_slot_32(pid, delay, 0x00000000);
suspend;
class_0A1A_slot_2E(target, arg_06);
if retval goto block_3211;
block_31EE:
spawn class_0A1A_slot_46(pid, target, arg_06);
suspend;
block_3211:
goto block_3004;
block_3214:
return;
}

View file

@ -0,0 +1,147 @@
function wallgun_slot_3C() /* entry=396 class_id=0x0A1A slot=0x3C */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
x, /* [BP-02h] type=0x69 */
left, /* [BP-04h] type=0x69 */
right, /* [BP-06h] type=0x69 */
inc, /* [BP-08h] type=0x69 */
f, /* [BP-0Ah] type=0x69 */
isTurret; /* [BP-0Ch] type=0x69 */
entry:
set_info(0x0001, *(arg_06));
class_0A1A_slot_29(arg_06);
isTurret = retval;
if (isTurret != 1) goto block_32D1;
block_32B9:
inc = -1;
left = 0;
right = 15;
goto block_330E;
block_32D1:
class_0A1A_slot_2B(arg_06);
if retval goto block_32F9;
block_32E1:
inc = -1;
left = 0;
right = 8;
goto block_330E;
block_32F9:
inc = 1;
left = 8;
right = 0;
block_330E:
class_0A1A_slot_2D(target, arg_06);
if (!retval) goto block_3328;
block_3321:
/* word_to_dword */
/* pop_result */
goto block_34DE;
block_3328:
if 1 goto block_34DE;
block_3330:
spawn class_0A1A_slot_26(pid, arg_06);
suspend;
spawn class_0A1A_slot_2F(pid, brain, target, arg_06);
suspend;
f = Item.getFrame(arg_06);
if (isTurret != 1) goto block_33C7;
block_338D:
if (f > 19) goto block_33C4;
block_3398:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_3328;
block_33C4:
goto block_3401;
block_33C7:
if (f > 8) goto block_3401;
block_33D2:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_3328;
block_33FE:
goto block_3401;
block_3401:
class_0A1A_slot_2D(target, arg_06);
x = retval;
if (x != 0) goto block_342A;
block_3420:
/* word_to_dword */
/* pop_result */
goto block_34DE;
block_342A:
if (x != 1) goto block_347E;
block_3438:
if (f != left) goto block_3471;
block_3449:
if (isTurret != 1) goto block_3464;
block_345A:
f = right;
goto block_346E;
block_3464:
/* word_to_dword */
/* pop_result */
goto block_34DE;
block_346E:
goto block_347B;
block_3471:
f = (f + inc);
block_347B:
goto block_34C1;
block_347E:
if (f != right) goto block_34B7;
block_348F:
if (isTurret != 1) goto block_34AA;
block_34A0:
f = left;
goto block_34B4;
block_34AA:
/* word_to_dword */
/* pop_result */
goto block_34DE;
block_34B4:
goto block_34C1;
block_34B7:
f = (f - inc);
block_34C1:
goto block_3328;
block_34DE:
return;
}

View file

@ -0,0 +1,45 @@
function wallgun_slot_3D() /* entry=396 class_id=0x0A1A slot=0x3D */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
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:
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;
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,85 @@
function wallgun_slot_40() /* entry=396 class_id=0x0A1A slot=0x40 */
{
var
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:
return;
}

View file

@ -0,0 +1,157 @@
function wallgun_slot_41() /* entry=396 class_id=0x0A1A slot=0x41 */
{
var
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;
}

View file

@ -0,0 +1,157 @@
function wallgun_slot_42() /* entry=396 class_id=0x0A1A slot=0x42 */
{
var
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;
}

View file

@ -0,0 +1,22 @@
function wallgun_slot_43() /* entry=396 class_id=0x0A1A slot=0x43 */
{
var
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:
return;
}

View file

@ -0,0 +1,23 @@
function wallgun_slot_44() /* entry=396 class_id=0x0A1A slot=0x44 */
{
var
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:
return;
}

View file

@ -0,0 +1,136 @@
function wallgun_slot_45() /* entry=396 class_id=0x0A1A slot=0x45 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
brain, /* [BP+0Ch] type=0x69 */
dir, /* [BP-01h] type=0x62 */
dist, /* [BP-03h] type=0x69 */
t, /* [BP-05h] type=0x69 */
del, /* [BP-07h] type=0x69 */
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:
new = (new + 20);
goto block_4E56;
block_4E4C:
new = (new + 9);
block_4E56:
if 1 goto block_537F;
block_4E5E:
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:
spawn class_0A1A_slot_30(pid, arg_06);
suspend;
goto block_4E56;
block_537F:
return;
}

View file

@ -0,0 +1,117 @@
function wallgun_slot_46() /* entry=396 class_id=0x0A1A slot=0x46 */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
dir, /* [BP-01h] type=0x62 */
dist, /* [BP-03h] type=0x69 */
t, /* [BP-05h] type=0x69 */
del, /* [BP-07h] type=0x69 */
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:
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:
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:
spawn class_0A1A_slot_30(pid, arg_06);
suspend;
/* bit_not */
block_599A:
return;
}

View file

@ -0,0 +1,59 @@
function wallgun_slot_47() /* entry=396 class_id=0x0A1A slot=0x47 */
{
var
referent, /* [BP+00h] type=0x69 */
dir, /* [BP+0Ah] type=0x62 */
x1, /* [BP-02h] type=0x69 */
x2, /* [BP-04h] type=0x69 */
y1, /* [BP-06h] type=0x69 */
y2, /* [BP-08h] type=0x69 */
z1, /* [BP-09h] type=0x62 */
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:
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;
}

View file

@ -0,0 +1,107 @@
function wallgun_slot_48() /* entry=396 class_id=0x0A1A slot=0x48 */
{
var
referent, /* [BP+00h] type=0x69 */
ref, /* [BP+0Ah] type=0x69 */
vel, /* [BP+0Ch] type=0x69 */
maxHit, /* [BP-02h] type=0x69 */
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:
maxHit = 100;
goto block_5C5C;
block_5BCF:
if ((Intrinsic0016(arg_06) != 0x0373) || (Intrinsic0016(arg_06) != 0x0373)) goto block_5BF7;
block_5BED:
maxHit = 100;
goto block_5C5C;
block_5BF7:
if ((Intrinsic0016(arg_06) != 0x0399) || (Intrinsic0016(arg_06) != 0x03A1)) goto block_5C1F;
block_5C15:
maxHit = 50;
goto block_5C5C;
block_5C1F:
if (Intrinsic0016(arg_06) != 0x04C8) goto block_5C3A;
block_5C2F:
maxHit = 0x00FA;
goto block_5C5C;
block_5C3A:
if (Intrinsic0016(arg_06) != 0x01CD) goto block_5C55;
block_5C4A:
maxHit = 0x00C8;
goto block_5C5C;
block_5C55:
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:
class_0A0C_slot_20(1);
if retval goto block_5CAC;
block_5C9C:
goto block_5CB9;
block_5CAC:
block_5CB9:
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:
/* word_to_dword */
/* pop_result */
goto block_5D67;
block_5D67:
return;
}

View file

@ -0,0 +1,162 @@
function wallgun_slot_49() /* entry=396 class_id=0x0A1A slot=0x49 */
{
var
referent, /* [BP+00h] type=0x69 */
ref, /* [BP+0Ah] type=0x69 */
vel, /* [BP+0Ch] type=0x69 */
gun, /* [BP-02h] type=0x24 */
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:
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;
}

View file

@ -0,0 +1,117 @@
function wallgun_slot_4A() /* entry=396 class_id=0x0A1A slot=0x4A */
{
var
referent, /* [BP+00h] type=0x69 */
target, /* [BP+0Ah] type=0x69 */
dir, /* [BP-01h] type=0x62 */
dist, /* [BP-03h] type=0x69 */
t, /* [BP-05h] type=0x69 */
del, /* [BP-07h] type=0x69 */
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:
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:
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:
spawn class_0A1A_slot_30(pid, arg_06);
suspend;
/* bit_not */
block_6B0C:
return;
}

View file

@ -0,0 +1,59 @@
function wallgun_slot_4B() /* entry=396 class_id=0x0A1A slot=0x4B */
{
var
referent, /* [BP+00h] type=0x69 */
dir, /* [BP+0Ah] type=0x62 */
x1, /* [BP-02h] type=0x69 */
x2, /* [BP-04h] type=0x69 */
y1, /* [BP-06h] type=0x69 */
y2, /* [BP-08h] type=0x69 */
z1, /* [BP-09h] type=0x62 */
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:
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;
}