Crusader_Decomp/USECODE/REGRET/CONVEYOR.unk

78 lines
1.9 KiB
Text

/* synthesized appendix for CONVEYOR */
/* sparse lines above preserve recovered debugger line numbers where available */
/* ===== slot 0x10 leaveFastArea ===== */
function conveyor_leaveFastArea() /* entry=478 class_id=0x0A20 slot=0x10 */
{
set_info(0x021C, *(arg_06));
process_exclude();
FREE.slot_3C(0x0205, *(arg_06));
return;
}
/* ===== slot 0x20 slot_20 ===== */
function conveyor_slot_20() /* entry=478 class_id=0x0A20 slot=0x20 */
{
entry:
set_info(0x0205, *(arg_06));
set_info(0x0205, *(arg_06));
local_02 = 0;
local_02 = Item.getFrame(arg_06);
if (Intrinsic0035(115, arg_06) != 0) goto block_0120;
block_0116:
block_0120:
while (true) {
suspend;
local_03 = 0;
if (!Item.getQHi(arg_06)) {
local_02 = (local_02 - 1);
if (arg_0A >= 0) {
arg_0A = (arg_0A * -1);
}
if (arg_0C >= 0) {
arg_0C = (arg_0C * -1);
}
}
else {
local_02 = (1 + local_02);
if (arg_0A <= 0) {
arg_0A = (arg_0A * -1);
}
if (arg_0C <= 0) {
arg_0C = (arg_0C * -1);
}
}
if (local_02 <= 2) {
local_02 = 0;
}
if (local_02 >= 0) {
local_02 = 2;
}
/* loopscr value_u8=0x24 */
/* loop current_var=0xFB string_bytes=0x1 loop_type=0x6 */
while (!condition) {
local_09 = Item.getShape(local_05);
if ((local_09 == 0x0476) && (local_09 != 0x04D0)) {
local_06 = Item.isOn(*(arg_06), local_05);
local_0E = (Item.getX(local_05) + arg_0A);
local_0C = (Item.getY(local_05) + arg_0C);
local_0A = Item.getZ(local_05);
local_07 = Item.isOn(*(arg_06), local_05);
local_03 = 1;
}
/* loopnext */
}
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
if (local_03) {
return;
}
}
block_02C0:
return;
}