Page 1 of 1
					
				Мининг ZHR
				Posted: 12.03.2012 11:02
				by karlson
				Code: Select all
Program Mining;
var
s: integer;
/// Настройки //////
const
Tool=$0E85; // Тип кирки 0F39 - Лопата 0E85 - Кирка
Moving=0; // 1 = Делать круг, 0 = копать вокруг себя
CircleDelay=0; // Задержка после прохода одного круга (в секундах!)
////////////////////
procedure CheckCon;
begin
if Connected=False then
begin;
repeat
Wait(1000);
until Connected=True;
Wait(5000);
end;
end;
function CheckTool: boolean;
begin
CheckCon;
FindType(Tool, backpack);
if (dead=false) and (FindQuantity = 0) and (ObjAtLayer(RhandLayer) = 0) then
begin
AddToSystemJournal('Нет инструмента');
s:=0;
result:=false;
SetARStatus(false);
Disconnect;
end
else
result:=true;
end;
procedure Mine;
var
t: TDateTime;
X: integer;
Y: integer;
begin
for y:=GetY(self)-1 to GetY(self)+1 do
for x:=GetX(self)-1 to GetX(self)+1 do
begin
repeat
CheckCon;
t:=now;
if CheckTool=true then
begin
UseType(Tool, $FFFF);
WaitForTarget(10000);
TargetToXYZ(x, y, 0);
repeat
wait(1000);
until (InJournalBetweenTimes('stop|tool|far away|mine or dig', t, now) > 0) or (not Connected);
end
else break;
until InJournalBetweenTimes('somwhere|no sand|no ore|no clay|tool|far away|mine or dig', t, now) > 0;
end;
end;
procedure Main;
var
StartX: integer;
StartY: integer;
begin
if Moving = 1 then
begin
StartX:=GetX(self);
StartY:=GetY(self);
Mine;
MoveXY(StartX+3, StartY, true, 0, false);
Mine;
MoveXY(StartX+3, StartY+3, true, 0, false);
Mine;
MoveXY(StartX, StartY+3, true, 0, false);
Mine;
MoveXY(StartX, StartY, true, 0, false);
Wait(CircleDelay*1000);
end
else
begin
Mine;
Wait(CircleDelay*1000);
end;
end;
begin
s:=1;
CheckCon;
while (s=1) and (not dead) do
Main;
end.
Версия 	Stealth 3.9.6
Сначала выдавала ошибку на Сhecksave я её заменил на CheckLag(30000)  и убрал {$Include 'all.inc'} он начал копать.При заходе в клиент видишь постоянно таргет, кирки не берёт когда ломаются и не ходит по шахте 
В скрипте менял только то что выдавало ошибку.
Помогите настроить чтобы брал кирку и ходил. =)0
 
			
					
				Re: Мининг ZHR
				Posted: 12.03.2012 18:16
				by nah nah
				чтобы ходил, прочти девятую строку (считая пустые строки)
чтобы брал кирку... даже не знаю, у всех инструментов один и тот же тип?
			 
			
					
				Re: Мининг ZHR
				Posted: 13.03.2012 8:11
				by karlson
				nah nah wrote:чтобы ходил, прочти девятую строку (считая пустые строки)
чтобы брал кирку... даже не знаю, у всех инструментов один и тот же тип?
Что то я не могу понять какую именно строку (выделите плиз)
Тип одинаковый у кирок.
 
			
					
				Re: Мининг ZHR
				Posted: 13.03.2012 9:54
				by MuDaCk
				karlson wrote:nah nah wrote:чтобы ходил, прочти девятую строку (считая пустые строки)
чтобы брал кирку... даже не знаю, у всех инструментов один и тот же тип?
Что то я не могу понять какую именно строку (выделите плиз)
Тип одинаковый у кирок.
 
Code: Select all
Moving=0; // 1 = Делать круг, 0 = копать вокруг себя
на будущее, пользуйся выделением скрипта 
 
			
					
				Re: Мининг ZHR
				Posted: 13.03.2012 10:50
				by karlson
				MuDaCk wrote:karlson wrote:nah nah wrote:чтобы ходил, прочти девятую строку (считая пустые строки)
чтобы брал кирку... даже не знаю, у всех инструментов один и тот же тип?
Что то я не могу понять какую именно строку (выделите плиз)
Тип одинаковый у кирок.
 
Code: Select all
Moving=0; // 1 = Делать круг, 0 = копать вокруг себя
на будущее, пользуйся выделением скрипта 
 
 
			
					
				Re: Мининг ZHR
				Posted: 20.08.2012 10:18
				by Kallish
				Вот такую штуку выдает, шард Middle-earth. И не как не копает вообще =(
			 
			
					
				Re: Мининг ZHR
				Posted: 28.08.2012 23:30
				by Alex
				подбирай высоту тут TargetToXYZ(x, y, 0); последний пораметр от -20 до +20, на разных шардах по разному
			 
			
					
				Re: Мининг ZHR
				Posted: 31.08.2012 16:55
				by Kallish
				из инжекта
Code: Select all
sub Mining()
  var i, j, tile, f, b, p
  f = 0
  b = 0
  while not uo.dead()
    for i = -2 to 2
      for j = -2 to 2
        tile = 168
        while (not uo.PrivateGetTile(uo.GetX() + i, uo.GetY() + j, 251, tile, tile)) and (tile < 1343)
          if tile == 171 then
            tile = 310
          else
            if tile == 311 then
              tile = 1339
            else
              tile = tile + 1
            endif
          endif
        wend
      
        if tile < 1339 then
          tile = 0
        endif
        if tile < 1343 then
          uo.concolor(0x53)
          uo.Print("Копаем тайл " + Str((i + 2) * 5 + j + 3) + " из 25...")
          uo.concolor(0)
          
          MiningTile(tile, uo.GetX() + i, uo.GetY() + j, 251)
        endif
      next
    next   
    uo.Print("Завершил круг. Продолжаю.")
    f = f + 1
    if b == 2 then
       for p=1 to 11
         wait(500)
         uo.press(36)
       next
       uo.press(34)
       f = 0
       b = 0
    else
      if f == 3 then
        for p=1 to 5
          wait(500)
          uo.press(34)
        next
        f = 0
        b = b + 1
      endif
    endif
    
  wend
end sub
помогите перенести переменные в скрипт в 1топике....
 
			
					
				Re: Мининг ZHR
				Posted: 31.08.2012 17:56
				by Alex
				в инжект скрипте высота - 251, пробуй в стелс скрипте TargetToXYZ(x, y, 251) вместо TargetToXYZ(x, y, 0)
			 
			
					
				Re: Мининг ZHR
				Posted: 31.08.2012 19:28
				by Kallish
				тоже самое выдает, в других скриптах тоже пробовал подставлять...
			 
			
					
				Re: Мининг ZHR
				Posted: 31.08.2012 21:16
				by Kallish
				я выяснил, он кликает в кочки\скалы. а мне нада что бы вокруг в тайлы кликал.. ад...