Put in the UpText name and it will start in the center of screen and look around till it finds the UpText then retrieves the color. Once it reaches the edge of the screen it stops looking.
This isn't perfect as you can imagine, but it works Okayish in my Autofigher. 
SCAR Code:
function FindObjColorByText(ObjName:string): integer;//by Narcle
var
xx,yy, MainTimeCount, TimeCount1, TimeCount2, MoP, coloris:integer;
begin
MMouse(258, 180, 1, 1);
MainTimeCount := 1;
GetMousePos(xx, yy);
repeat
repeat
If (MoP = 0) then MMouse(xx,yy-25, 1, 1) else MMouse(xx,yy+25, 1, 1);
GetMousePos(xx, yy);
if IsUpText(ObjName) then
begin
coloris := GetColor(xx,yy);
Writeln('Object color is: '+inttostr(coloris)+' at '+inttostr(xx)+', '+inttostr(yy));
result := coloris;
exit;
end;
TimeCount1 := TimeCount1+1;
until(TimeCount1 = MainTimeCount)
repeat
If (MoP = 0) then MMouse(xx+40,yy, 1, 1) else MMouse(xx-40,yy, 1, 1);
GetMousePos(xx, yy);
if IsUpText(ObjName) then
begin
coloris := GetColor(xx,yy);
Writeln('Object color is: '+inttostr(coloris)+' at '+inttostr(xx)+', '+inttostr(yy));
result := coloris;
exit;
end;
TimeCount2 := TimeCount2+1;
until(TimeCount2 = MainTimeCount)
MainTimeCount := MainTimeCount+1;
TimeCount1 := 0;
TimeCount2 := 0;
if (MoP = 0) then MoP := 1 else MoP := 0;
until(MainTimeCount >= 12)
Writeln('Couldnt find object color!');
result := 0;
end;