function glass_ns_gotHit() /* entry=163 class_id=0x02F3 slot=0x06 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    ref, /* [BP+0Ah] type=0x69 */
    vel, /* [BP+0Ch] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    shot, /* [BP-04h] type=0x24 */
    counter, /* [BP-06h] type=0x69 */
    door; /* [BP-08h] type=0x24 */

  entry:
    set_info(0x020C, *(arg_06));
    process_exclude();
    shot = ref;
    class_0A0C_slot_2C(vel, ref);
    if (!retval) goto block_010E;

  block_0108:
    goto block_0307;

  block_010E:
    door = *(arg_06);
    spawn class_0A1E_slot_27(pid, 1, vel, ref, arg_06);
    suspend;
    /* dword_to_word  */
    if (!process_result) goto block_017A;

  block_0147:
    class_0A0C_slot_20(1);
    if retval goto block_0167;

  block_0157:
    goto block_0174;

  block_0167:

  block_0174:
    goto block_0307;

  block_017A:
    spawn class_0A06_slot_22(pid, door);
    suspend;
    if (!Item.getFrame(arg_06)) goto block_0307;

  block_01A9:
    counter = 1;

  block_01BD:
    if (counter <= 3) goto block_0205;

  block_01C5:
    spawn class_0A0C_slot_32(pid, 5, 0x00000000);
    suspend;
    counter = (1 + counter);
    goto block_01BD;

  block_0205:
    if Npc.isDead((Item.getZ(arg_06) + 1), (Item.legal_create(arg_06) + 96), (Intrinsic0013(arg_06) + 32), 0x027A) goto block_0278;

  block_0239:

  block_0278:
    if Npc.isDead((Item.getZ(arg_06) + 1), (Item.legal_create(arg_06) - 16), Intrinsic0013(arg_06), 0x0349) goto block_02E5;

  block_02A9:

  block_02E5:

  block_0307:
    return;

}
