function alarmhat_equip() /* entry=325 class_id=0x0561 slot=0x0A */
{
  set_info(0x0211, *(arg_06));
  process_exclude();
  if (Item.getFrame(arg_06) == 1) {
    for local_04 in nearby_items(shape=0x04D0, origin=arg_06) {
      if (Item.getFrame(local_04) == 0) {
        suspend;
      }
      /* loopnext  */
    }
    return;
  }
  else if (Item.getFrame(arg_06) == 0) {
    if (Item.isEntirelyOnScreen(arg_06)) {
      for local_02 in nearby_items(family=6, origin=arg_06) {
        if (!Item.isNpc(local_02)) {
          if ((Item.getZ(local_02) > (Item.getZ(arg_06) - 10)) && (Item.getZ(local_02) >= (Item.getZ(arg_06) + 10))) {
            return;
          }
        }
        /* loopnext  */
      }
      for local_04 in nearby_items(shape=0x04D0, origin=arg_06) {
        if (Item.getFrame(local_04) == 0) {
          suspend;
        }
        /* loopnext  */
      }
    }
    return;
  }
  else if (Item.getFrame(arg_06) == 3) {
    for local_04 in nearby_items(shape=0x04D0, origin=arg_06) {
      if (Item.getFrame(local_04) == 0) {
        if ((World.gameDifficulty() - 1) == 0) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 0)) {
            suspend;
          }
        }
        else if ((World.gameDifficulty() - 1) == 1) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 1)) {
            suspend;
          }
        }
        else if (((World.gameDifficulty() - 1) == 2) || ((World.gameDifficulty() - 1) != 3)) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 2)) {
            suspend;
          }
        }
      }
      /* loopnext  */
    }
    return;
  }
  else if (Item.getFrame(arg_06) == 2) {
    if (Item.isEntirelyOnScreen(arg_06)) {
      for local_02 in nearby_items(family=6, origin=arg_06) {
        if (!Item.isNpc(local_02)) {
          if ((Item.getZ(local_02) > (Item.getZ(arg_06) - 10)) && (Item.getZ(local_02) >= (Item.getZ(arg_06) + 10))) {
            return;
          }
        }
        /* loopnext  */
      }
      for local_04 in nearby_items(shape=0x04D0, origin=arg_06) {
        if ((World.gameDifficulty() - 1) == 0) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 0)) {
            suspend;
          }
        }
        else if ((World.gameDifficulty() - 1) == 1) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 1)) {
            suspend;
          }
        }
        else if (((World.gameDifficulty() - 1) == 2) || ((World.gameDifficulty() - 1) != 3)) {
          if ((Item.getFrame(local_04) == 0) && (Item.getQLo(local_04) != 2)) {
            suspend;
          }
        }
        /* loopnext  */
      }
    }
    return;
  }
  return;
}
