Hmm... I don't see a problem, but as for finding the color, I suggest using this:
SCAR Code:
{*******************************************************************************
function AutoColorThis(Bitmap, MaxTol, X1, Y1, X2, Y2: Integer): Integer;
By: Sumilion
Description: Resturns exact color of a bmp with tol found on the screen.
*******************************************************************************}
function AutoColorThis(Bitmap, MaxTol, X1, Y1, X2, Y2: Integer): Integer;
var
lTol, Ax, Ay: Integer;
begin
repeat;
if (FindBitmapToleranceIn(Bitmap, Ax, Ay, X1, Y1, X2, Y2, lTol)) then
begin
Result := GetColor(Ax, Ay);
Exit;
end;
lTol := lTol + 5;
until (lTol >= MaxTol);
WriteLn('Color NOT found.');
end;
Here it is set up: (You still have to fetch the BMP)
SCAR Code:
GrassColor := AutoColorThis(GrassBMP, 50, MMX1, MMY1, MMX2, MMY2);
Set GrassColor as a variable, and set the bitmap GrassBMP, and you'll be able to use "GrassColor" whenever you need to find the color for the grass.
I would think AutoColorThis would be more reliable than the color with a tolerance. I could be wrong.
Hope I've been of a help to you, bye!