Pseudocode and stuff

This commit is contained in:
MaddoScientisto 2026-03-25 23:32:13 +01:00
commit ee33f94b4b
466 changed files with 27770 additions and 276 deletions

View file

@ -0,0 +1,236 @@
function cru_spid_use() /* entry=320 class_id=0x0560 slot=0x01 */
{
var
referent, /* [BP+00h] type=0x69 */
mine, /* [BP-02h] type=0x24 */
InCrouch, /* [BP-03h] type=0x62 */
Cru_Spider, /* [BP-05h] type=0x24 */
target, /* [BP-07h] type=0x24 */
item, /* [BP-09h] type=0x24 */
counter, /* [BP-0Bh] type=0x69 */
lastAnim, /* [BP-0Dh] type=0x69 */
xOff, /* [BP-0Fh] type=0x69 */
yOff, /* [BP-11h] type=0x69 */
wp; /* [BP-16h] type=0x24 */
entry:
set_info(0x0207, *(arg_06));
process_exclude();
/* global_address global_id=0x3C */
if (Item.getType() != 40) goto block_0184;
block_0150:
goto block_055B;
block_0184:
Cru_Spider = *(arg_06);
set_info(0x00F0, 0);
/* global_address global_id=0x3C */
lastAnim = Intrinsic005A();
block_01B0:
/* global_address global_id=0x3C */
if Intrinsic0033() goto block_01E6;
block_01C0:
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_01B0;
block_01E6:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 0) goto block_0204;
block_01F6:
xOff = -1;
yOff = -3;
goto block_03C6;
block_0204:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 1) goto block_0222;
block_0214:
xOff = 0;
yOff = -3;
goto block_03C6;
block_0222:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 2) goto block_0240;
block_0232:
xOff = 1;
yOff = -3;
goto block_03C6;
block_0240:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 3) goto block_025E;
block_0250:
xOff = 2;
yOff = -2;
goto block_03C6;
block_025E:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 4) goto block_027C;
block_026E:
xOff = 2;
yOff = -1;
goto block_03C6;
block_027C:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 5) goto block_029A;
block_028C:
xOff = 2;
yOff = 0;
goto block_03C6;
block_029A:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 6) goto block_02B8;
block_02AA:
xOff = 2;
yOff = 2;
goto block_03C6;
block_02B8:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 7) goto block_02D6;
block_02C8:
xOff = 0;
yOff = 2;
goto block_03C6;
block_02D6:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 8) goto block_02F4;
block_02E6:
xOff = -1;
yOff = 2;
goto block_03C6;
block_02F4:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 9) goto block_0312;
block_0304:
xOff = -2;
yOff = 2;
goto block_03C6;
block_0312:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 10) goto block_0330;
block_0322:
xOff = -3;
yOff = 2;
goto block_03C6;
block_0330:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 11) goto block_034E;
block_0340:
xOff = -3;
yOff = 1;
goto block_03C6;
block_034E:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 12) goto block_036C;
block_035E:
xOff = -3;
yOff = 0;
goto block_03C6;
block_036C:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 13) goto block_038A;
block_037C:
xOff = -3;
yOff = -1;
goto block_03C6;
block_038A:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 14) goto block_03A8;
block_039A:
xOff = -3;
yOff = -2;
goto block_03C6;
block_03A8:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 15) goto block_03C6;
block_03B8:
xOff = -3;
yOff = -3;
goto block_03C6;
block_03C6:
/* global_address global_id=0x3C */
if Intrinsic0035() goto block_03E0;
block_03D6:
InCrouch = 1;
goto block_0417;
block_03E0:
InCrouch = 0;
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_0417:
/* global_address global_id=0x3C */
wp = (Intrinsic0013() + (xOff * 16));
/* global_address global_id=0x3C */
local_14 = (Item.legal_create() + (yOff * 16));
/* global_address global_id=0x3C */
local_12 = Item.getZ();
if (!Item.getSurfaceWeight(wp, 0, 0x0560, mine)) goto block_04E2;
block_046A:
if (!InCrouch) goto block_04D1;
block_04A1:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_04D1:
goto block_055B;
block_04E2:
counter = 1;
block_04F6:
if (counter <= 9) goto block_053E;
block_04FE:
spawn class_0A0C_slot_32(pid, 3, 0x00000000);
suspend;
counter = (1 + counter);
goto block_04F6;
block_053E:
spawn class_0560_slot_20(mine, arg_06);
block_055B:
return;
}

View file

@ -0,0 +1,13 @@
function cru_spid_hit() /* entry=320 class_id=0x0560 slot=0x05 */
{
var
referent, /* [BP+00h] type=0x69 */
ref, /* [BP+0Ah] type=0x69 */
vel; /* [BP+0Ch] type=0x69 */
entry:
set_info(0x020B, *(arg_06));
process_exclude();
return;
}

View file

@ -0,0 +1,140 @@
function cru_spid_slot_20() /* entry=320 class_id=0x0560 slot=0x20 */
{
var
referent, /* [BP+00h] type=0x69 */
ref, /* [BP+0Ah] type=0x69 */
counter, /* [BP-02h] type=0x69 */
xOff, /* [BP-04h] type=0x69 */
yOff, /* [BP-06h] type=0x69 */
counter2, /* [BP-08h] type=0x69 */
wp, /* [BP-0Dh] type=0x24 */
item, /* [BP-0Fh] type=0x24 */
spider; /* [BP-11h] type=0x24 */
entry:
set_info(0x00F0, *(arg_06));
item = ref;
set_info(0x00F0, spider);
block_065B:
if (counter < 0x01F4) goto block_08FD;
block_066A:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 0)) != 1) goto block_0696;
block_0688:
xOff = 0;
yOff = -1;
goto block_07CA;
block_0696:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 2)) != 3) goto block_06C2;
block_06B4:
xOff = 1;
yOff = -1;
goto block_07CA;
block_06C2:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 4)) != 5) goto block_06EE;
block_06E0:
xOff = 1;
yOff = 0;
goto block_07CA;
block_06EE:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 6)) != 7) goto block_071A;
block_070C:
xOff = 1;
yOff = 1;
goto block_07CA;
block_071A:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 8)) != 9) goto block_0746;
block_0738:
xOff = 0;
yOff = 1;
goto block_07CA;
block_0746:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 10)) != 11) goto block_0772;
block_0764:
xOff = -1;
yOff = 1;
goto block_07CA;
block_0772:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 12)) != 13) goto block_079E;
block_0790:
xOff = -1;
yOff = 0;
goto block_07CA;
block_079E:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
if (Intrinsic00FA((Intrinsic00FA() != 14)) != 15) goto block_07CA;
block_07BC:
xOff = -1;
yOff = -1;
goto block_07CA;
block_07CA:
wp = (wp + (xOff * 8));
local_0B = (local_0B + (yOff * 8));
if (!Item.pop(0, 1, wp, spider)) goto block_0855;
block_080A:
local_09 = (local_09 + 1);
if (!Item.pop(0, 1, wp, spider)) goto block_0855;
block_082D:
if (!Item.pop(0, 1, wp, spider)) goto block_0855;
block_0846:
block_0855:
counter2 = (1 + counter2);
if ((counter2 != 20) && (local_09 > 4)) goto block_08CA;
block_0873:
local_09 = (local_09 - 4);
if Item.pop(0, 1, wp, spider) goto block_08C3;
block_0892:
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
suspend;
block_08C3:
counter2 = 0;
block_08CA:
counter = (1 + counter);
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
suspend;
goto block_065B;
block_08FD:
return;
}