Index: server/player.c =================================================================== RCS file: /cvsroot/crossfire/crossfire/server/player.c,v retrieving revision 1.196 diff -C5 -r1.196 player.c *** server/player.c 6 Apr 2006 21:18:35 -0000 1.196 --- server/player.c 17 Apr 2006 15:26:16 -0000 *************** *** 1166,1178 **** return 0; if ( ! can_pick (op, tmp)) continue; ! if (op->contr->search_str[0]!='\0' && settings.search_items == TRUE) ! { ! if (item_matched_string (op, tmp, op->contr->search_str)) pick_up (op, tmp); continue; } /* high not bit set? We're using the old autopickup model */ --- 1166,1186 ---- return 0; if ( ! can_pick (op, tmp)) continue; ! if (op->contr->search_str[0]!='\0' && settings.search_items == TRUE) { ! char itemname[MAX_BUF]; ! char *p=itemname; ! strcpy(itemname, op->contr->search_str); ! while (itemname && (p=strchr(p, '|'))) { ! if (p) *p=0; ! if (item_matched_string (op, tmp, itemname)) ! pick_up (op, tmp); ! p++; ! } ! if (item_matched_string (op, tmp, itemname)) pick_up (op, tmp); continue; } /* high not bit set? We're using the old autopickup model */