Cazax
03-29-2008, 10:26 PM
I was bored so i made a function:
function FindTree(var x,y : Integer; TreeType : String; Tol : Integer): boolean;
var
TreeColor : Integer;
TPA : TPointArray;
TPAA : T2DPointArray;
Name : string;
i,TTime : integer;
begin
case lowercase(TreeType) of
'oak': TreeColor := 4615266; Name := 'ak';
'willow': TreeColor := 4748399; Name := 'illow';
'tree': TreeColor := 1520939; Name := 'ree';
'yew': TreeColor := 3038299; Name := 'ree';
else
Writeln('Invalid option');
Result := False;
end;
MarkTIme(TTime);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, TreeColor, MSX1, MSY1, MSX2, MSY2, Tol);
if length(TPA) > 0 then
begin
TPAA := TPAtoATPAEx(TPA, 25, 25);
Writeln('Finding '+TreeType+' took: '+inttostr(TimeFromMark(TTime)));
for i:=0 to high(TPAA) do
begin
MiddleTPAEx(TPAA[i], x, y);
MMouse(x, y, 3, 3);
wait(50+random(50))
if isuptext(Name) then
GetMousePos(x, y);
Result := True;
end;
end else
Result := False;
end;
Will find the nearest tree aviable.
e.g:
if FindTree(x, y, 'Yew', 15) then Writeln('YaY');
function FindTree(var x,y : Integer; TreeType : String; Tol : Integer): boolean;
var
TreeColor : Integer;
TPA : TPointArray;
TPAA : T2DPointArray;
Name : string;
i,TTime : integer;
begin
case lowercase(TreeType) of
'oak': TreeColor := 4615266; Name := 'ak';
'willow': TreeColor := 4748399; Name := 'illow';
'tree': TreeColor := 1520939; Name := 'ree';
'yew': TreeColor := 3038299; Name := 'ree';
else
Writeln('Invalid option');
Result := False;
end;
MarkTIme(TTime);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, TreeColor, MSX1, MSY1, MSX2, MSY2, Tol);
if length(TPA) > 0 then
begin
TPAA := TPAtoATPAEx(TPA, 25, 25);
Writeln('Finding '+TreeType+' took: '+inttostr(TimeFromMark(TTime)));
for i:=0 to high(TPAA) do
begin
MiddleTPAEx(TPAA[i], x, y);
MMouse(x, y, 3, 3);
wait(50+random(50))
if isuptext(Name) then
GetMousePos(x, y);
Result := True;
end;
end else
Result := False;
end;
Will find the nearest tree aviable.
e.g:
if FindTree(x, y, 'Yew', 15) then Writeln('YaY');