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,40 @@
function fffloor_gotHit() /* entry=54 class_id=0x0135 slot=0x06 */
{
var
referent, /* [BP+00h] type=0x69 */
ref, /* [BP+0Ah] type=0x69 */
vel, /* [BP+0Ch] type=0x69 */
n; /* [BP-02h] type=0x24 */
entry:
set_info(0x020C, *(arg_06));
process_exclude();
if ((Item.getFrame(arg_06) != 1) || (ref > 0x0100)) goto block_04B8;
block_04B2:
goto block_0542;
block_04B8:
n = ref;
block_04BF:
if Item.isOn(*(arg_06), n) goto block_0542;
block_04D2:
if (Item.getFrame(arg_06) != 1) goto block_04EA;
block_04E4:
goto block_0542;
block_04EA:
class_0A0C_slot_20(pid, 8);
spawn class_0A11_slot_2D(retval, *(arg_06), n);
suspend;
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_04BF;
block_0542:
return;
}

View file

@ -0,0 +1,157 @@
function fffloor_equip() /* entry=54 class_id=0x0135 slot=0x0A */
{
var
referent, /* [BP+00h] type=0x69 */
var, /* [BP+0Ah] type=0x69 */
egg, /* [BP-02h] type=0x24 */
fffloor; /* [BP-04h] type=0x24 */
entry:
set_info(0x0211, *(arg_06));
process_exclude();
if (var != 0) goto block_0178;
block_00F6:
/* 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_0113:
if condition goto block_013F;
block_0116:
if (Egg.setEggXRange(egg) != 2) goto block_013B;
block_012E:
block_013B:
/* loopnext */
goto block_0113;
block_013F:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_0385;
block_0178:
if (var != 1) goto block_01E0;
block_0183:
/* 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_01A0:
if condition goto block_01CC;
block_01A3:
if (Egg.setEggXRange(egg) != 2) goto block_01C8;
block_01BB:
block_01C8:
/* loopnext */
goto block_01A0;
block_01CC:
/* bit_not */
goto block_0385;
block_01E0:
if (var != 29) goto block_0248;
block_01EB:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFC string_bytes=0x6 loop_type=0x2 */
block_022F:
if condition goto block_0243;
block_0232:
/* loopnext */
goto block_022F;
block_0243:
goto block_0385;
block_0248:
if (var != 30) goto block_032C;
block_0253:
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
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_0296:
if condition goto block_02C2;
block_0299:
if (Egg.setEggXRange(egg) != 2) goto block_02BE;
block_02B1:
block_02BE:
/* loopnext */
goto block_0296;
block_02C2:
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFC string_bytes=0x6 loop_type=0x2 */
block_0308:
if condition goto block_0327;
block_030B:
/* loopnext */
goto block_0308;
block_0327:
goto block_0385;
block_032C:
if (var != 31) goto block_0385;
block_0337:
/* 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_0354:
if condition goto block_0380;
block_0357:
if (Egg.setEggXRange(egg) != 2) goto block_037C;
block_036F:
block_037C:
/* loopnext */
goto block_0354;
block_0380:
goto block_0385;
block_0385:
return;
}

View file

@ -0,0 +1,46 @@
function fffloor_unequip() /* entry=54 class_id=0x0135 slot=0x0B */
{
var
referent, /* [BP+00h] type=0x69 */
var, /* [BP+0Ah] type=0x69 */
item; /* [BP-02h] type=0x24 */
entry:
set_info(0x0212, *(arg_06));
process_exclude();
if (Item.getFrame(arg_06) != 1) goto block_03E3;
block_03DD:
goto block_045B;
block_03E3:
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x3A */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
block_0400:
if condition goto block_0459;
block_0403:
if (Item.isNpc(item) != 1) goto block_0455;
block_0415:
if Item.overlaps(item, arg_06) goto block_0455;
block_0426:
class_0A0C_slot_20(pid, 8);
spawn class_0A11_slot_2D(retval, *(arg_06), item);
suspend;
block_0455:
/* loopnext */
goto block_0400;
block_0459:
block_045B:
return;
}