Думаю потому что он подставляет в параметр "тип" твои значения не разделяя их на "тип" и "цвет".
Решение вопроса.
1. Убери цвет из массива и оставь там только типы, и ищи все цвета оставив в параметре поиска по цвету '-1'
2. Создай второй массив цветов и в случае нахождения по типу запускай проверку по цвету
uo.exec( "findtype "+ Item[l] + " lastcorpse") if uo.FindCount()>0 and uo.GetDistance("lastcorpse")<=3 then uo.Grab(1,"finditem")
Ну как вариант..
YokoInjection CodeSweeper Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom