Pseudocode decompialtion improvements and docs
This commit is contained in:
parent
f869a181a3
commit
589bfc31ef
1898 changed files with 60634 additions and 6597 deletions
|
|
@ -25,16 +25,12 @@ function blastpac_use() /* entry=207 class_id=0x039B slot=0x01 */
|
|||
if Actor.isBusy() goto block_0153;
|
||||
|
||||
block_012D:
|
||||
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
|
||||
suspend;
|
||||
goto block_011D;
|
||||
|
||||
block_0153:
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x3D */
|
||||
/* loopscr value_u8=0x40 */
|
||||
/* loopscr value_u8=0x25 */
|
||||
/* loop current_var=0xF9 string_bytes=0x6 loop_type=0x2 */
|
||||
/* loop_selector item in nearby_items(shape=0x053A, origin=global[0x003C]) */
|
||||
|
||||
block_0171:
|
||||
if condition goto block_0233;
|
||||
|
|
@ -43,14 +39,14 @@ function blastpac_use() /* entry=207 class_id=0x039B slot=0x01 */
|
|||
target = item;
|
||||
|
||||
block_017B:
|
||||
class_0A0C_slot_29(target, global[0x003C]);
|
||||
FREE.slot_29(target, global[0x003C]);
|
||||
if ((retval > 3) && (counter != 6)) goto block_01FC;
|
||||
|
||||
block_019E:
|
||||
/* global_address global_id=0x3C */
|
||||
/* global_address global_id=0x3C */
|
||||
/* global_address global_id=0x3C */
|
||||
spawn class_0A11_slot_22(Item.getDirFromTo16(Item.getX(pid, 1, Item.getY(Item.getY(target), Item.getX(target)))));
|
||||
spawn NPC.slot_22(Item.getDirFromTo16(Item.getX(pid, 1, Item.getY(Item.getY(target), Item.getX(target)))));
|
||||
suspend;
|
||||
counter = (1 + counter);
|
||||
goto block_017B;
|
||||
|
|
@ -152,19 +148,19 @@ function blastpac_use() /* entry=207 class_id=0x039B slot=0x01 */
|
|||
/* global_address global_id=0x3C */
|
||||
/* global_address global_id=0x3C */
|
||||
/* global_address global_id=0x3C */
|
||||
spawn class_039B_slot_20(mine, arg_06);
|
||||
spawn BLASTPAC.slot_20(mine, arg_06);
|
||||
|
||||
block_04C5:
|
||||
/* global_address global_id=0x3C */
|
||||
if Actor.isBusy() goto block_04FB;
|
||||
|
||||
block_04D5:
|
||||
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
|
||||
suspend;
|
||||
goto block_04C5;
|
||||
|
||||
block_04FB:
|
||||
spawn class_0A0C_slot_21(pid, 13, 0x00000000);
|
||||
spawn FREE.slot_21(pid, 13, 0x00000000);
|
||||
suspend;
|
||||
if (!InCrouch) goto block_05C5;
|
||||
|
||||
|
|
@ -186,14 +182,14 @@ function blastpac_use() /* entry=207 class_id=0x039B slot=0x01 */
|
|||
goto block_061A;
|
||||
|
||||
block_05C5:
|
||||
spawn class_0A0C_slot_21(pid, 0x00B0, 0x00000000);
|
||||
spawn FREE.slot_21(pid, 0x00B0, 0x00000000);
|
||||
suspend;
|
||||
|
||||
block_061A:
|
||||
goto block_0672;
|
||||
|
||||
block_061D:
|
||||
spawn class_0A0C_slot_21(pid, 0x00B0, 0x00000000);
|
||||
spawn FREE.slot_21(pid, 0x00B0, 0x00000000);
|
||||
suspend;
|
||||
|
||||
block_0672:
|
||||
|
|
|
|||
|
|
@ -13,43 +13,34 @@ function blastpac_slot_20() /* entry=207 class_id=0x039B slot=0x20 */
|
|||
y, /* [BP-10h] type=0x69 */
|
||||
z; /* [BP-12h] type=0x69 */
|
||||
|
||||
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 60, 0x00000000);
|
||||
suspend;
|
||||
set_info(0x00F0, 0);
|
||||
counter = 1;
|
||||
while (counter > 5) {
|
||||
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 60, 0x00000000);
|
||||
suspend;
|
||||
counter = (1 + counter);
|
||||
}
|
||||
spawn class_0A1E_slot_28(pid, 1, 2, pac);
|
||||
spawn ITEM.slot_28(pid, 1, 2, pac);
|
||||
suspend;
|
||||
/* global_address global_id=0x3C */
|
||||
if (Actor.getMap() == 1) {
|
||||
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
|
||||
suspend;
|
||||
/* pop_global global_id=0x20 size=0x1 */
|
||||
/* 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 */
|
||||
/* loop_selector item in nearby_items(shape=REACTOR, origin=global[0x003C]) */
|
||||
while (!condition) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 2, item);
|
||||
spawn ITEM.slot_28(pid, 0, 2, item);
|
||||
suspend;
|
||||
therm = item;
|
||||
/* loopnext */
|
||||
}
|
||||
/* 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) {
|
||||
spawn class_0A1E_slot_28(pid, 1, 0, item);
|
||||
for item in nearby_items(shape=REACTOR_CELL, origin=therm) {
|
||||
spawn ITEM.slot_28(pid, 1, 0, item);
|
||||
suspend;
|
||||
thermTop = item;
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
|
|
@ -57,46 +48,35 @@ function blastpac_slot_20() /* entry=207 class_id=0x039B slot=0x20 */
|
|||
if (!Actor.isDead()) {
|
||||
return;
|
||||
}
|
||||
/* 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) {
|
||||
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 20, 10), 0x00000000);
|
||||
for item in nearby_items(shape=NUMBERS, origin=therm) {
|
||||
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 20, 10), 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
counter = 0;
|
||||
while (counter > 2) {
|
||||
while (!AudioProcess.isSFXPlayingForObject(22, thermTop)) {
|
||||
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
counter = (1 + counter);
|
||||
}
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 30, 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 */
|
||||
/* loop_selector item in nearby_items(shape=ELECTRODE, origin=therm) */
|
||||
while (!condition) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 0, item);
|
||||
spawn ITEM.slot_28(pid, 0, 0, item);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 10, 5), 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 10, 5), 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
spawn class_0A0C_slot_32(pid, 0x00C8, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 0x00C8, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_26(pid, "1c", 0x00000000);
|
||||
spawn FREE.slot_26(pid, "1c", 0x00000000);
|
||||
/* free_stack_string value_u8=0x0 target=[SP+00h] */
|
||||
suspend;
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x42 */
|
||||
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
|
||||
/* loop_selector item in selector_0x42(arg0=0x032A, arg1=0x0329, arg2=(50 * 32), origin=global[0x003C]) */
|
||||
while (!condition) {
|
||||
/* loopnext */
|
||||
}
|
||||
|
|
@ -104,127 +84,89 @@ function blastpac_slot_20() /* entry=207 class_id=0x039B slot=0x20 */
|
|||
}
|
||||
else if (Actor.getMap() == 7) {
|
||||
/* pop_global global_id=0x23 size=0x1 */
|
||||
spawn class_0A0C_slot_32(1, pid, 10, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(1, 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 */
|
||||
/* loop_selector item in nearby_items(shape=COMM_CONSOLE, origin=global[0x003C]) */
|
||||
while (!condition) {
|
||||
radar = item;
|
||||
/* loopnext */
|
||||
}
|
||||
/* 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) {
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
for item in nearby_items(shape=RADAR_DISH, origin=radar) {
|
||||
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
|
||||
suspend;
|
||||
x = Item.getX(item);
|
||||
y = Item.getY(item);
|
||||
z = Item.getZ(item);
|
||||
/* loopnext */
|
||||
}
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x42 */
|
||||
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
|
||||
while (!condition) {
|
||||
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
|
||||
for item in selector_0x42(arg0=0x01A5, arg1=0x01A4, arg2=(50 * 32), origin=radar) {
|
||||
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 60, 0x00000000);
|
||||
suspend;
|
||||
/* global_address global_id=0x3C */
|
||||
if (!Actor.isDead()) {
|
||||
return;
|
||||
}
|
||||
/* 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) {
|
||||
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 20, 10), 0x00000000);
|
||||
for item in nearby_items(shape=NUMBERS, origin=radar) {
|
||||
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 20, 10), 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
counter = 0;
|
||||
while (counter > 2) {
|
||||
while (!AudioProcess.isSFXPlayingForObject(0x0096, radar)) {
|
||||
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
counter = (1 + counter);
|
||||
}
|
||||
spawn class_0A0C_slot_32(pid, 0x00C8, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 0x00C8, 0x00000000);
|
||||
suspend;
|
||||
spawn class_0A0C_slot_26(pid, "4g", 0x00000000);
|
||||
spawn FREE.slot_26(pid, "4g", 0x00000000);
|
||||
/* free_stack_string value_u8=0x0 target=[SP+00h] */
|
||||
suspend;
|
||||
/* loopscr value_u8=0x24 */
|
||||
/* loopscr value_u8=0x42 */
|
||||
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
|
||||
/* loop_selector item in selector_0x42(arg0=0x032A, arg1=0x0329, arg2=(50 * 32), origin=radar) */
|
||||
while (!condition) {
|
||||
/* loopnext */
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if (Actor.getMap() == 29) {
|
||||
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
|
||||
suspend;
|
||||
/* pop_global global_id=0x2E size=0x1 */
|
||||
/* 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 */
|
||||
/* loop_selector item in nearby_items(shape=LIGHT_TUBE, origin=global[0x003C]) */
|
||||
while (!condition) {
|
||||
spawn class_0A1E_slot_28(pid, 0, 2, item);
|
||||
spawn ITEM.slot_28(pid, 0, 2, item);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
/* 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) {
|
||||
for item in nearby_items(shape=TUBE_PLATFORM, origin=global[0x003C]) {
|
||||
/* loopnext */
|
||||
}
|
||||
spawn class_0A0C_slot_32(pid, 60, 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(pid, 60, 0x00000000);
|
||||
suspend;
|
||||
/* global_address global_id=0x3C */
|
||||
if (!Actor.isDead()) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
/* 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) {
|
||||
for item in nearby_items(shape=NUMBERS, origin=global[0x003C]) {
|
||||
if (Item.getQLo(item) == 0) {
|
||||
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 30, 20), 0x00000000);
|
||||
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 30, 20), 0x00000000);
|
||||
suspend;
|
||||
}
|
||||
/* loopnext */
|
||||
}
|
||||
/* 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) {
|
||||
spawn class_0A0C_slot_32(pid, 20, 0x00000000);
|
||||
for item in nearby_items(shape=0x03B0, origin=global[0x003C]) {
|
||||
spawn FREE.waitNTimerTicks(pid, 20, 0x00000000);
|
||||
suspend;
|
||||
/* loopnext */
|
||||
}
|
||||
spawn class_0A0C_slot_22(0x00000000);
|
||||
spawn FREE.slot_22(0x00000000);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue