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,39 @@
function surcamew_use() /* entry=284 class_id=0x04DE slot=0x01 */
{
entry:
set_info(0x0207, *(arg_06));
process_exclude();
if (Item.getStatus(arg_06) & 0x1000) goto block_01E7;
block_01E1:
goto block_029B;
block_01E7:
/* global_address global_id=0x3C */
if (Item.getType((Item.getNpcNum(arg_06) != 4)) != 25) goto block_028D;
block_020A:
if (global[0x002C] != 0) goto block_0275;
block_0217:
/* pop_global global_id=0x2C size=0x1 */
/* str_to_ptr */
/* free_stack_string value_u8=0x4 target=[SP+04h] */
suspend;
spawn class_0A18_slot_20(pid, 0, *(arg_06), arg_06);
suspend;
block_0275:
/* bit_not */
goto block_029B;
block_028A:
goto block_029B;
block_028D:
spawn class_04DE_slot_20(arg_06);
block_029B:
return;
}

View file

@ -0,0 +1,13 @@
function surcamew_equip() /* entry=284 class_id=0x04DE slot=0x0A */
{
set_info(0x0211, *(arg_06));
process_exclude();
if ((Item.getStatus(arg_06) & 0x1000)) {
if (arg_0A == 0) {
/* global_address global_id=0x3C */
spawn class_04DE_slot_21(arg_06);
}
return;
}
return;
}

View file

@ -0,0 +1,109 @@
function surcamew_slot_20() /* entry=284 class_id=0x04DE slot=0x20 */
{
var
referent, /* [BP+00h] type=0x69 */
textFile, /* [BP-02h] type=0x73 */
monit, /* [BP-04h] type=0x24 */
valueBox, /* [BP-06h] type=0x24 */
passcode, /* [BP-08h] type=0x69 */
link, /* [BP-0Ah] type=0x69 */
code; /* [BP-0Bh] type=0x62 */
entry:
set_info(0x021B, 0);
link = Item.getNpcNum(arg_06);
if (Item.getMapNum(arg_06) != 0) goto block_03FC;
block_02F3:
/* 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_0311:
if condition goto block_038A;
block_0314:
if ((Item.getNpcNum(monit) != link) || (link != 0)) goto block_0386;
block_032F:
if Item.hurl(monit) goto block_0386;
block_033E:
class_0A17_slot_21(Item.hurl(monit), Item.getNpcNum(monit), arg_06);
/* free_local_string bp_offset=0xFE target=[BP-02h] */
textFile = retval;
spawn class_0A17_slot_20(pid, textFile, arg_06);
/* free_stack_string value_u8=0x0 target=[SP+00h] */
suspend;
block_0386:
/* loopnext */
goto block_0311;
block_038A:
spawn class_0A18_slot_20(pid, 0, *(arg_06), arg_06);
suspend;
spawn class_04DE_slot_21(pid, arg_06);
suspend;
spawn class_0A18_slot_20(pid, 1, *(arg_06), arg_06);
suspend;
goto block_0501;
block_03FC:
code = 0;
if Item.hurl(arg_06) goto block_04E2;
block_0412:
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
block_0430:
if condition goto block_0468;
block_0433:
if (Item.getNpcNum(valueBox) != link) goto block_0464;
block_0445:
class_0A19_slot_20(valueBox);
passcode = retval;
code = (1 + code);
goto block_0468;
block_0464:
/* loopnext */
goto block_0430;
block_0468:
if code goto block_049A;
block_0472:
class_0A17_slot_23(passcode, Item.hurl(arg_06), Item.getNpcNum(arg_06), arg_06);
/* free_local_string bp_offset=0xFE target=[BP-02h] */
textFile = retval;
goto block_04BD;
block_049A:
class_0A17_slot_21(Item.hurl(arg_06), Item.getNpcNum(arg_06), arg_06);
/* free_local_string bp_offset=0xFE target=[BP-02h] */
textFile = retval;
block_04BD:
spawn class_0A17_slot_20(pid, textFile, arg_06);
/* free_stack_string value_u8=0x0 target=[SP+00h] */
suspend;
block_04E2:
spawn class_04DE_slot_21(pid, arg_06);
suspend;
block_0501:
/* bit_not */
/* free_local_string bp_offset=0xFE target=[BP-02h] */
return;
}

View file

@ -0,0 +1,183 @@
function surcamew_slot_21() /* entry=284 class_id=0x04DE slot=0x21 */
{
var
referent, /* [BP+00h] type=0x69 */
screen, /* [BP-02h] type=0x24 */
cameraEgg, /* [BP-04h] type=0x24 */
trueRef, /* [BP-06h] type=0x69 */
npc, /* [BP-08h] type=0x24 */
therma, /* [BP-0Ah] type=0x24 */
x1, /* [BP-0Ch] type=0x69 */
y1, /* [BP-0Eh] type=0x69 */
z1, /* [BP-0Fh] type=0x62 */
x, /* [BP-11h] type=0x69 */
y, /* [BP-13h] type=0x69 */
z; /* [BP-14h] type=0x62 */
entry:
set_info(0x021B, 0);
trueRef = *(arg_06);
if Item.getQLo(0, 0x0470, screen) goto block_05DA;
block_05AE:
block_05DA:
spawn class_0A0C_slot_32(pid, 30, 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_061F:
if condition goto block_0AF7;
block_0622:
if (Item.getNpcNum(cameraEgg) != Item.getNpcNum(arg_06)) goto block_0AF3;
block_063E:
if (Item.getNpcNum(arg_06) != 0x00FE) goto block_084F;
block_0651:
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
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=0xF8 string_bytes=0x6 loop_type=0x2 */
block_06FC:
if condition goto block_073B;
block_06FF:
if Item.isNpc(npc) goto block_0737;
block_070E:
if (Item.getQLo(npc) != Item.getNpcNum(arg_06)) goto block_0737;
block_072A:
therma = npc;
goto block_073B;
block_0737:
/* loopnext */
goto block_06FC;
block_073B:
if therma goto block_0786;
block_0745:
spawn class_0A11_slot_28(pid, therma);
suspend;
goto block_0B4B;
block_0783:
goto block_084C;
block_0786:
/* global_address global_id=0x3C */
x1 = Intrinsic0013();
/* global_address global_id=0x3C */
y1 = Item.legal_create();
/* global_address global_id=0x3C */
z1 = Item.getZ();
block_07B3:
if (!Item.enterFastArea()) goto block_07EB;
block_07C2:
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_07B3;
block_07EB:
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_0AF7;
block_084C:
goto block_0AF3;
block_084F:
if (Item.getNpcNum(arg_06) != 0x00FD) goto block_08B8;
block_0862:
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
suspend;
/* str_to_ptr */
/* free_stack_string value_u8=0x4 target=[SP+04h] */
suspend;
goto block_0AF3;
block_08B8:
if (Item.getNpcNum(arg_06) > 0x00F9) goto block_0948;
block_08CB:
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
spawn class_04DE_slot_22(cameraEgg, arg_06);
goto block_0AF7;
block_0945:
goto block_0AF3;
block_0948:
x = Intrinsic0013(cameraEgg);
y = Item.legal_create(cameraEgg);
z = Item.getZ(cameraEgg);
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
suspend;
if (Item.getMapNum(cameraEgg) != 0) goto block_0A23;
block_09FE:
spawn class_0A18_slot_20(pid, 0, cameraEgg, arg_06);
suspend;
block_0A23:
spawn class_0A0C_slot_32(pid, 120, 0x00000000);
suspend;
block_0A49:
if (!Item.enterFastArea()) goto block_0A81;
block_0A58:
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_0A49;
block_0A81:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
goto block_0AF7;
block_0AF3:
/* loopnext */
goto block_061F;
block_0AF7:
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
suspend;
if screen goto block_0B32;
block_0B27:
block_0B32:
block_0B4B:
return;
}

View file

@ -0,0 +1,56 @@
function surcamew_slot_22() /* entry=284 class_id=0x04DE slot=0x22 */
{
var
referent, /* [BP+00h] type=0x69 */
eventTrigger, /* [BP+0Ah] type=0x24 */
n, /* [BP-02h] type=0x24 */
foundGun; /* [BP-03h] type=0x62 */
entry:
set_info(0x00F0, 0);
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x42 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
block_0BF2:
if condition goto block_0C1A;
block_0BF5:
if Item.isNpc(n) goto block_0C16;
block_0C04:
foundGun = 1;
block_0C16:
/* loopnext */
goto block_0BF2;
block_0C1A:
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
suspend;
if foundGun goto block_0CBC;
block_0C7F:
if (Item.pop() != 1) goto block_0CB9;
block_0C90:
spawn class_0A0C_slot_32(pid, 5, 0x00000000);
suspend;
goto block_0C7F;
block_0CB9:
goto block_0CE3;
block_0CBC:
spawn class_0A0C_slot_32(pid, 0x00C8, 0x00000000);
suspend;
block_0CE3:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
return;
}