function basegun_calledFromAnim() /* entry=274 class_id=0x04C8 slot=0x0E */
{
  entry:
    set_info(0x021A, *(arg_06));
    process_exclude();
    local_02 = *(arg_06);
    local_04 = Actor.getDir(local_02);
    local_06 = Actor.getLastAnimSet(local_02);
    if ((local_06 != 13) || (local_06 != 8)) goto block_0296;

  block_021C:
    WALLGUN.slot_40(0, 3, local_04, local_04, arg_06);
    WALLGUN.slot_3F(retval, local_04, arg_06);
    WALLGUN.slot_3E(retval, local_04, arg_06);
    WALLGUN.slot_43(pid, 0, 3, local_04, local_04, arg_06);
    WALLGUN.slot_42(retval, local_04, arg_06);
    WALLGUN.slot_41(retval, local_04, arg_06);
    suspend;
    goto block_0347;

  block_0296:
    set_info(0x00F0, 0);
    /* loop_selector local_08 in nearby_items(shape=0x04E7, origin=local_02) */

  block_02B2:
    if condition goto block_02F7;

  block_02B5:
    if (Intrinsic000D(local_02) != Item.getQLo(local_08)) goto block_02F3;

  block_02CB:
    if (Item.getMapNum(local_08) != 0) goto block_02F3;

  block_02DA:
    spawn TRIGGER.slot_20(pid, 0, local_08, local_08);
    suspend;
    goto block_02F7;

  block_02F3:
    /* loopnext  */
    goto block_02B2;

  block_02F7:
    spawn ITEM.slot_2A(pid, 1, 2, local_02);
    suspend;

  block_0347:
    return;

}
