Crusader_Decomp/USECODE/EUSECODE_extracted/pseudocode/SCANNER/slot_01_use.txt

37 lines
978 B
Text

function scanner_use() /* entry=304 class_id=0x052D slot=0x01 */
{
var
referent, /* [BP+00h] type=0x69 */
n; /* [BP-02h] type=0x24 */
set_info(0x0207, *(arg_06));
process_exclude();
set_info(0x00F0, 0);
/* global_address global_id=0x3C */
if (Actor.getMana() >= 0x03E8) {
spawn FREE.slot_21(pid, 0x00B0, 0x00000000);
suspend;
spawn FREE.waitNTimerTicks(pid, 100, 0x00000000);
suspend;
return;
}
else {
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
/* loop_selector n in nearby_items(family=6, origin=global[0x003C]) */
while (!condition) {
if ((Actor.isDead(n) == 0) && (n != getTargetNPCNumMaybe())) {
NPC.slot_2B(n);
if (!retval) {
spawn SCANNER.slot_20(n, arg_06);
}
}
/* loopnext */
}
spawn FREE.slot_21(pid, 0x00BA, 0x00000000);
suspend;
spawn FREE.waitNTimerTicks(pid, 120, 0x00000000);
suspend;
}
return;
}