Well I use something that I developed called GetTextAtEx In which you just specify the colors and it will get the uptext with those colors. I could probably whip something up pretty quick though.
function IsUpTextEx(Text: array of string; Color, Tolerance: Integer): Boolean;
var
ax, ay, i: Integer;
begin
for i:= 0 to GetArrayLength(Text) - 1 do
if(IsTextInAreaEx(7, 7, 334, 20, ax, ay, Text[i], Tolerance, Upchars, False, True, 0, 2, Color))then
begin
Result:= True;
Exit;
end;
end;
IsUpTextEx(ArrayofText, 3967970, 50)
This will look for the ArrayofText with the Orange Color of item names in uptext.
procedure GetItemName: string;
begin
Result:= GetTextAtEx(7, 7, 50, UpChars, False, True, 0, 2, 3967970, 50, False, tr_AllChars);
end.
This "should" return the Orange UpText of an Item, haven't tested it but it has the same parameters as IsUpTextEx, just returns the Text rather thank looking for specific text.
As for mousing and checking to see if the item is correct I'm sure a blind half retarded Dwarven midget with Dyslexia could do it.