function bouncbox_gotHit() /* entry=291 class_id=0x04EF slot=0x06 */ { var referent, /* [BP+00h] type=0x69 */ ref, /* [BP+0Ah] type=0x69 */ vel, /* [BP+0Ch] type=0x69 */ dir, /* [BP-02h] type=0x69 */ qHi, /* [BP-04h] type=0x69 */ qLo, /* [BP-06h] type=0x69 */ item, /* [BP-08h] type=0x24 */ item2, /* [BP-0Ah] type=0x24 */ x1, /* [BP-0Ch] type=0x69 */ y1, /* [BP-0Eh] type=0x69 */ ammo; /* [BP-10h] type=0x69 */ entry: set_info(0x020C, *(arg_06)); process_exclude(); dir = Item.getCX(arg_06); item = ref; if (ref != 0x4000) goto block_02D1; block_010F: class_0A0C_slot_2C(vel, ref); class_0A0C_slot_2C((retval != 4), vel, ref); if (retval != 3) goto block_014B; block_0145: goto block_0479; block_014B: if ((dir > 15) && (dir < 32)) goto block_018B; block_015F: dir = (dir + 2); if (dir > 31) goto block_017E; block_0174: dir = (dir - 16); block_017E: block_018B: if (Item.getStatus(arg_06) & 4) goto block_01A8; block_019D: dir = 0x00FF; goto block_02CE; block_01A8: class_0A0C_slot_2C(vel, ref); ammo = retval; if (dir != 0x00FF) goto block_01D7; block_01C5: class_0A0C_slot_20(15); dir = retval; goto block_0216; block_01D7: if (dir != 0x00FE) goto block_0216; block_01E3: suspend; goto block_0479; block_0213: goto block_0216; block_0216: dir = (dir & 15); if ((dir > 13) || (dir < 3)) goto block_0241; block_0234: y1 = (y1 - 32); goto block_02A4; block_0241: if ((dir > 1) && (dir < 7)) goto block_0262; block_0255: x1 = (x1 + 32); goto block_02A4; block_0262: if ((dir > 5) && (dir < 11)) goto block_0283; block_0276: y1 = (y1 + 32); goto block_02A4; block_0283: if ((dir > 9) && (dir < 15)) goto block_02A4; block_0297: x1 = (x1 - 32); goto block_02A4; block_02A4: suspend; block_02CE: goto block_0479; block_02D1: if (Intrinsic0016(item) != 0x02C3) goto block_03A5; block_02E4: qHi = Item.getCX(item); qLo = Item.pop(item); if Item.getQLo(0, 0x02C4, item2) goto block_03A2; block_031F: if qHi goto block_0373; block_0334: goto block_03A2; block_0373: block_03A2: goto block_0479; block_03A5: if (Intrinsic0016(item) != 0x02C4) goto block_0479; block_03B8: qHi = Item.getCX(item); qLo = Item.pop(item); if Item.getQLo(0, 0x02C3, item2) goto block_0476; block_03F3: if qHi goto block_0447; block_0408: goto block_0476; block_0447: block_0476: goto block_0479; block_0479: return; }