Code: Select all
procedure Min;
begin
while (connected) do
begin
if (ObjAtLayer(RHandLayer) = 0) then equipt(RHandLayer,pickaxe);
UOSay(' ')
for x := -2 to 2 do
begin
for y := -2 to 2 do
begin
wait(1000);
if (weight > MaxWeight) then
begin
wait(1000);
home;
exit;
end;
ctime := Now;
UseObject(ObjAtLayer(RHandLayer));
WaitForTarget(5000);
checksave;
If TargetPresent then TargetToTile(0, GetX(self)+x, GetY(self)+y, GetZ(self));
k:=0
repeat
if (CheckEnemy) then
begin
uosay('.guards')
Raw_move(GetDirection(self), true);
wait(1000);
home;
exit;
end;
checksave;
wait(100);
k:= k+1;
i := InJournalBetweenTimes('stop|anything', ctime, Now);
until (i<>-1) or ( k > 600);
wait(1000);
if (ObjAtLayer(RHandLayer) = 0) then
begin
if (not CheckPickaxe) then exit;
equipt(RHandLayer,pickaxe);
end;
end;
end;
if (Moving = 1) then move;
end;
end;
Code: Select all
function CheckPickaxe : Boolean;
var tmpser : Cardinal;
begin
Result := true;
if (ObjAtLayer(RhandLayer) = 0) then
begin
tmpser := findtype(pickaxe,backpack);
if tmpser = 0 then
begin
Result := false;
exit;
end;
wait(500);
checksave;
end;
end;