public int map_pf_interact(int id) {
        if (path != null) {
            path.clear();
            path_moving = false;
            path_step = 0;
            path_interact_object = null;
        }
        Gob pgob;
        synchronized (glob.oc) {
            pgob = glob.oc.getgob(id);
        }
        if (pgob == null)
            return -1;
        path_interact_object = pgob;
        path = APXUtils._pf_find_path(pgob.position(), id);
        update_pf_moving();
        return path == null ? -1 : path.size();
    }