function floor1_enterFastArea() /* entry=342 class_id=0x0902 slot=0x0F */ { var referent, /* [BP+00h] type=0x69 */ counter, /* [BP-02h] type=0x69 */ item, /* [BP-04h] type=0x24 */ item2, /* [BP-06h] type=0x24 */ highNumber, /* [BP-08h] type=0x69 */ lowNumber, /* [BP-0Ah] type=0x69 */ tempNumber, /* [BP-0Ch] type=0x69 */ floorItems, /* [BP-0Eh] type=0x6C */ wantToStop, /* [BP-10h] type=0x69 */ foundFloor, /* [BP-12h] type=0x69 */ onTime, /* [BP-14h] type=0x69 */ id, /* [BP-16h] type=0x69 */ n; /* [BP-18h] type=0x24 */ entry: set_info(0x021B, *(arg_06)); process_exclude(); counter = 0; highNumber = 0; lowNumber = 0x0100; tempNumber = 0; spawn FREE.waitNTimerTicks(pid, 10, 0x00000000); suspend; id = Egg.getEggId(arg_06); onTime = (id * 10); if (onTime != 0) goto block_015B; block_0154: onTime = 5; block_015B: for item in selector_0x42(arg0=0x0135, arg1=0x01C8, arg2=(35 * 32), origin=arg_06) { foundFloor = 1; tempNumber = Item.getQLo(item); if ((tempNumber > 0) && (tempNumber >= 0x00FA)) { if (highNumber >= tempNumber) { highNumber = tempNumber; } if (lowNumber <= tempNumber) { lowNumber = tempNumber; } /* create_list element_size=0x2 count=0x1 */ /* append_list */ /* free_local_list bp_offset=0xF2 target=[BP-0Eh] */ floorItems = item; } /* loopnext */ } block_01F9: if (!foundFloor) goto block_020A; block_0204: goto block_0498; block_020A: if 1 goto block_0498; block_0212: wantToStop = 0; counter = lowNumber; block_0220: if (counter <= highNumber) goto block_03E5; block_022B: block_0234: foreach_list item -> block_02FF; block_0239: if (Item.getStatus(item) & 0x1000) goto block_0259; block_024C: wantToStop = 1; goto block_03E5; block_0259: if (Item.getQLo(item) != counter) goto block_02F9; block_026B: if (!AudioProcess.isSFXPlayingForObject(112, arg_06)) goto block_029A; block_028D: block_029A: /* loopscr value_u8=0x24 */ /* loop current_var=0xFA string_bytes=0x1 loop_type=0x6 */ block_02A8: if condition goto block_02F7; block_02AB: if (Actor.isNPC(item2) != 1) goto block_02F3; block_02BD: n = item2; FREE.slot_20(pid, 8); spawn NPC.slot_2D(retval, *(arg_06), n); suspend; block_02F3: /* loopnext */ goto block_02A8; block_02F7: block_02F9: goto block_0234; block_02FF: if (wantToStop != 1) goto block_0310; block_030A: goto block_03E5; block_0310: spawn FREE.waitNTimerTicks(pid, onTime, 0x00000000); suspend; block_0336: if (Egg.getEggXRange(arg_06) > 0) goto block_0374; block_034B: spawn FREE.waitNTimerTicks(pid, 60, 0x00000000); suspend; goto block_0336; block_0374: block_037D: foreach_list item -> block_03B2; block_0382: if (Item.getQLo(item) != counter) goto block_03AC; block_0394: block_03AC: goto block_037D; block_03B2: spawn FREE.waitNTimerTicks(pid, 2, 0x00000000); suspend; counter = (1 + counter); goto block_0220; block_03E5: if (wantToStop != 1) goto block_0495; block_03F0: block_03F9: foreach_list item -> block_0429; block_03FE: goto block_03F9; block_0429: if (wantToStop != 1) goto block_0495; block_0437: spawn FREE.waitNTimerTicks(pid, 60, 0x00000000); suspend; wantToStop = 0; block_046D: foreach_list item -> block_0492; block_0472: if (Item.getStatus(item) & 0x1000) goto block_048C; block_0485: wantToStop = 1; block_048C: goto block_046D; block_0492: goto block_0429; block_0495: goto block_020A; block_0498: /* free_local_list bp_offset=0xF2 target=[BP-0Eh] */ return; }