/* synthesized appendix for SENTRY */ /* sparse lines above preserve recovered debugger line numbers where available */ /* ===== slot 0x06 gotHit ===== */ function sentry_gotHit() /* entry=108 class_id=0x01CD slot=0x06 */ { set_info(0x020C, *(arg_06)); process_exclude(); spawn WALLGUN2.slot_21(arg_0C, arg_0A, arg_06); return; } /* ===== slot 0x0A equip ===== */ function sentry_equip() /* entry=108 class_id=0x01CD slot=0x0A */ { set_info(0x0211, *(arg_06)); process_exclude(); if (World.getControlledNPCNum() == 0) { spawn WALLGUN.slot_24(pid, arg_0A, World.getControlledNPCNum(), arg_06); suspend; return; } else { spawn WALLGUN.slot_24(pid, arg_0A, global[0x001E], arg_06); suspend; } return; } /* ===== slot 0x0B unequip ===== */ function sentry_unequip() /* entry=108 class_id=0x01CD slot=0x0B */ { set_info(0x0212, *(arg_06)); process_exclude(); if (!(Item.getStatus(arg_06) & 4)) { return; } else { spawn WALLGUN.slot_27(arg_06); } return; } /* ===== slot 0x0E calledFromAnim ===== */ function sentry_calledFromAnim() /* entry=108 class_id=0x01CD slot=0x0E */ { entry: set_info(0x021A, *(arg_06)); process_exclude(); local_02 = *(arg_06); local_04 = Actor.getDir(local_02); local_06 = Actor.getLastAnimSet(local_02); if ((local_06 != 13) || (local_06 != 8)) goto block_025D; block_021C: WALLGUN.slot_40(0, 6, local_04, local_04, arg_06); WALLGUN.slot_3F(retval, local_04, arg_06); WALLGUN.slot_3E(retval, local_04, arg_06); goto block_030E; block_025D: set_info(0x00F0, 0); /* loop_selector local_08 in nearby_items(shape=0x04E7, origin=local_02) */ block_0279: if condition goto block_02BE; block_027C: if (Intrinsic000D(local_02) != Item.getQLo(local_08)) goto block_02BA; block_0292: if (Item.getMapNum(local_08) != 0) goto block_02BA; block_02A1: spawn TRIGGER.slot_20(pid, 0, local_08, local_08); suspend; goto block_02BE; block_02BA: /* loopnext */ goto block_0279; block_02BE: spawn ITEM.slot_2A(pid, 1, 2, local_02); suspend; block_030E: return; } /* ===== slot 0x0F enterFastArea ===== */ function sentry_enterFastArea() /* entry=108 class_id=0x01CD slot=0x0F */ { set_info(0x021B, *(arg_06)); process_exclude(); if (*(arg_06) >= 0x0100) { return; } else if (!(Item.getStatus(arg_06) & 4)) { return; } else { spawn WALLGUN.slot_27(arg_06); } return; } /* ===== slot 0x10 leaveFastArea ===== */ function sentry_leaveFastArea() /* entry=108 class_id=0x01CD slot=0x10 */ { set_info(0x021C, *(arg_06)); process_exclude(); /* bit_not */ FREE.slot_3C(1, *(arg_06)); FREE.slot_3C(0x020A, *(arg_06)); return; }