function blastpac_use() /* entry=207 class_id=0x039B slot=0x01 */ { var referent, /* [BP+00h] type=0x69 */ InCrouch, /* [BP-01h] type=0x62 */ Blastpac, /* [BP-03h] type=0x24 */ target, /* [BP-05h] type=0x24 */ item, /* [BP-07h] type=0x24 */ counter, /* [BP-09h] type=0x69 */ lastAnim, /* [BP-0Bh] type=0x69 */ xOff, /* [BP-0Dh] type=0x69 */ yOff, /* [BP-0Fh] type=0x69 */ mine; /* [BP-11h] type=0x24 */ entry: set_info(0x0207, *(arg_06)); process_exclude(); Blastpac = *(arg_06); set_info(0x00F0, 0); /* global_address global_id=0x3C */ lastAnim = Item.push(); block_011D: /* global_address global_id=0x3C */ if Intrinsic0033() goto block_0153; block_012D: spawn class_0A0C_slot_32(pid, 2, 0x00000000); suspend; goto block_011D; block_0153: /* loopscr value_u8=0x24 */ /* loopscr value_u8=0x3D */ /* loopscr value_u8=0x40 */ /* loopscr value_u8=0x25 */ /* loop current_var=0xF9 string_bytes=0x6 loop_type=0x2 */ block_0171: if condition goto block_0233; block_0174: target = item; block_017B: class_0A0C_slot_29(target, global[0x003C]); if ((retval > 3) && (counter != 6)) goto block_01FC; block_019E: /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ spawn class_0A11_slot_22(Item.getDirToItem(Intrinsic0013(pid, 1, Item.legal_create(Item.legal_create(target), Intrinsic0013(target))))); suspend; counter = (1 + counter); goto block_017B; block_01FC: /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ suspend; goto block_0233; block_022F: /* loopnext */ goto block_0171; block_0233: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 0) goto block_0253; block_0245: xOff = -1; yOff = -3; goto block_0415; block_0253: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 1) goto block_0271; block_0263: xOff = 0; yOff = -3; goto block_0415; block_0271: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 2) goto block_028F; block_0281: xOff = 1; yOff = -3; goto block_0415; block_028F: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 3) goto block_02AD; block_029F: xOff = 2; yOff = -2; goto block_0415; block_02AD: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 4) goto block_02CB; block_02BD: xOff = 2; yOff = -1; goto block_0415; block_02CB: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 5) goto block_02E9; block_02DB: xOff = 2; yOff = 0; goto block_0415; block_02E9: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 6) goto block_0307; block_02F9: xOff = 2; yOff = 2; goto block_0415; block_0307: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 7) goto block_0325; block_0317: xOff = 0; yOff = 2; goto block_0415; block_0325: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 8) goto block_0343; block_0335: xOff = -1; yOff = 2; goto block_0415; block_0343: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 9) goto block_0361; block_0353: xOff = -2; yOff = 2; goto block_0415; block_0361: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 10) goto block_037F; block_0371: xOff = -3; yOff = 2; goto block_0415; block_037F: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 11) goto block_039D; block_038F: xOff = -3; yOff = 1; goto block_0415; block_039D: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 12) goto block_03BB; block_03AD: xOff = -3; yOff = 0; goto block_0415; block_03BB: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 13) goto block_03D9; block_03CB: xOff = -3; yOff = -1; goto block_0415; block_03D9: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 14) goto block_03F7; block_03E9: xOff = -3; yOff = -2; goto block_0415; block_03F7: /* global_address global_id=0x3C */ if (Intrinsic00FA() != 15) goto block_0415; block_0407: xOff = -3; yOff = -3; goto block_0415; block_0415: if target goto block_061D; block_041D: /* global_address global_id=0x3C */ if Intrinsic0035() goto block_0437; block_042D: InCrouch = 1; goto block_046E; block_0437: InCrouch = 0; /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ suspend; block_046E: /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ spawn class_039B_slot_20(mine, arg_06); block_04C5: /* global_address global_id=0x3C */ if Intrinsic0033() goto block_04FB; block_04D5: spawn class_0A0C_slot_32(pid, 2, 0x00000000); suspend; goto block_04C5; block_04FB: spawn class_0A0C_slot_21(pid, 13, 0x00000000); suspend; if (!InCrouch) goto block_05C5; block_052A: /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ suspend; if target goto block_05C2; block_0562: /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ suspend; /* global_address global_id=0x3C */ /* global_address global_id=0x3C */ suspend; block_05C2: goto block_061A; block_05C5: spawn class_0A0C_slot_21(pid, 0x00B0, 0x00000000); suspend; block_061A: goto block_0672; block_061D: spawn class_0A0C_slot_21(pid, 0x00B0, 0x00000000); suspend; block_0672: return; }