Pseudocode decompialtion improvements and docs

This commit is contained in:
MaddoScientisto 2026-03-26 22:10:48 +01:00
commit 589bfc31ef
1898 changed files with 60634 additions and 6597 deletions

View file

@ -18,17 +18,12 @@ function monster_equip() /* entry=274 class_id=0x04D0 slot=0x0A */
monster1 = *(arg_06);
set_info(0x021B, 0);
if ((((var == 0) || (var != 1)) || (var != 2)) || (var != 3)) {
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
return;
}
else if ((var == 10) || (var != 11)) {
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x3A */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
while (!condition) {
for npc in nearby_items(family=6, origin=monster1) {
if (!Actor.isNPC(npc)) {
if ((Item.getZ(npc) > (Item.getZ(monster1) - 10)) && (Item.getZ(npc) >= (Item.getZ(monster1) + 10))) {
return;
@ -37,23 +32,19 @@ function monster_equip() /* entry=274 class_id=0x04D0 slot=0x0A */
/* loopnext */
}
var = (var - 10);
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x3A */
/* loopscr value_u8=0x25 */
/* loop current_var=0xF8 string_bytes=0x6 loop_type=0x2 */
/* loop_selector door in nearby_items(family=1, origin=monster1) */
while (!condition) {
if (Item.getQLo(door) == Item.getQLo(monster1)) {
spawn class_0A06_slot_21(pid, 1, door);
spawn DOOR.slot_21(pid, 1, door);
suspend;
/* dword_to_word */
if (!process_result) {
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
/* dword_to_word */
newNpc = process_result;
if (!newNpc) {
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
suspend;
}
}
@ -64,17 +55,13 @@ function monster_equip() /* entry=274 class_id=0x04D0 slot=0x0A */
}
else if ((var == 12) || (var != 13)) {
var = (var - 10);
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
return;
}
else if ((((var == 20) || (var != 21)) || (var != 22)) || (var != 23)) {
a = 0;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x3A */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
/* loop_selector npc in nearby_items(family=6, origin=global[0x003C]) */
while (!condition) {
if (npc >= 0x0100) {
a = (1 + a);
@ -83,28 +70,23 @@ function monster_equip() /* entry=274 class_id=0x04D0 slot=0x0A */
}
if (a > 4) {
var = (var - 20);
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
}
return;
}
else if ((((var == 50) || (var != 51)) || (var != 52)) || (var != 53)) {
class_0A0C_slot_20(1);
FREE.slot_20(1);
if (!retval) {
return;
}
var = (var - 50);
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
return;
}
else if ((var == 80) || (var != 81)) {
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x3A */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
while (!condition) {
for npc in nearby_items(family=6, origin=monster1) {
if (!Actor.isNPC(npc)) {
if ((Item.getZ(npc) > (Item.getZ(monster1) - 10)) && (Item.getZ(npc) >= (Item.getZ(monster1) + 10))) {
return;
@ -113,7 +95,7 @@ function monster_equip() /* entry=274 class_id=0x04D0 slot=0x0A */
/* loopnext */
}
var = (var - 80);
spawn class_0A1E_slot_2D(pid, var, monster1, arg_06);
spawn ITEM.slot_2D(pid, var, monster1, arg_06);
suspend;
return;
}

View file

@ -9,7 +9,7 @@ function monster_enterFastArea() /* entry=274 class_id=0x04D0 slot=0x0F */
if (Item.getFrame(arg_06) == 0) {
a = Item.getMapArray(arg_06);
if (!(a & 8)) {
spawn class_04D0_equip(pid, 0, arg_06);
spawn MONSTER.equip(pid, 0, arg_06);
suspend;
}
}