Crusader_Decomp/USECODE/EUSECODE_extracted/pseudocode/ELYDESK/slot_0F_enterFastArea.txt

86 lines
1.6 KiB
Text

function elydesk_enterFastArea() /* entry=246 class_id=0x044F slot=0x0F */
{
var
referent, /* [BP+00h] type=0x69 */
counter; /* [BP-02h] type=0x69 */
entry:
set_info(0x021B, *(arg_06));
process_exclude();
if (Item.getFrame(arg_06) != 10) goto block_0478;
block_0472:
goto block_0658;
block_0478:
suspend;
FREE.slot_20(pid, 100);
spawn FREE.waitNTimerTicks((retval + 60), 0x00000000);
suspend;
if (!Item.getFrame(arg_06)) goto block_0518;
block_04C9:
counter = 0;
block_04D0:
if (counter <= 5) goto block_0518;
block_04D8:
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
suspend;
counter = (1 + counter);
goto block_04D0;
block_0518:
FREE.slot_20(100);
if (retval > 50) goto block_0583;
block_052E:
counter = 0;
block_0535:
if (counter <= 5) goto block_0580;
block_053D:
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
suspend;
counter = (1 + counter);
goto block_0535;
block_0580:
goto block_0655;
block_0583:
counter = 6;
block_058A:
if (counter <= 9) goto block_05D2;
block_0592:
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
suspend;
counter = (1 + counter);
goto block_058A;
block_05D2:
FREE.slot_20(pid, 60);
spawn FREE.waitNTimerTicks((retval + 60), 0x00000000);
suspend;
counter = 0;
block_060A:
if (counter <= 3) goto block_0655;
block_0612:
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
suspend;
counter = (1 + counter);
goto block_060A;
block_0655:
goto block_0478;
block_0658:
return;
}