Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Помогите исправить макрос на мининг под Age Of Power!

тут можно задать вопрос по скриптингу
Post Reply
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

Code: Select all

CONST 
Version = 2.0; 


VAR 
  List: TStringList; 
  PointsNum: integer; 
  MinePos: array[1..6] of Record 
    x, y: integer; 
  end; 
  WaypointToHouse: array[1..255] of Record 
    x, y: integer; 
  end; 
  CenterPoint: Record 
    x, y: integer; 
  end; 
  
  MaxHits: Integer; 
  MaxWeight: Integer; 
  DropWeight: Integer; 
  OreBox: Cardinal; 
  MainBox: Cardinal;
  ArmorBox: Cardinal; 
  MineName: String; 
  Mine: String; 
  
  MineDir: array [1..9] of string; 
  Item: array [1..6] of integer; 
  Tools: array [1..8] of integer; 
  DirNum, PosNum: Integer; 
  ItemID: Cardinal; 
  AntiStuckCounter: integer; 
  ScriptStarted: boolean; 
  
  i: integer; 
  s: string; 
  FileName: String; 

//****************************************** 
//     Готовые процедцры, ниче не трогать 
//****************************************** 
procedure WaitConnection(WaitTime : Integer); 
begin 
  if Connected then Exit; 
  while not Connected do Wait(1000); 
    wait(WaitTime); 
end; 


procedure Gate; 
begin 
	ignore($60BCBC97);
	FindDistance := 18; 
	FindVertical := 18;
	if FindType($0F6C, ground) <> 0 then 
       addtosystemjournal('Обнаружен гейт'); 
	begin 
		while FindType($0F6C, ground) <> 0 do
		begin
			wait(1000);
		end;
	end; 
	if FindType($0F6C, ground) <> 0 then
       addtosystemjournal('Обнаружен гейт'); 
	begin 
		while FindType($0F6C, ground) <> 0 do
		begin
			wait(1000);
		end;
	end; 
end; 

procedure DropOre; 
begin 
  If Weight > DropWeight then 
  begin 
    addtosystemjournal('Перевес, сбрасываем руду...'); 
    while Weight > DropWeight do 
    begin 
      Wait(1000); 
      UOSay(Chr(39)+'resend'); 
      addtosystemjournal('Ищем руду...'); 
      Wait(5000); 
      addtosystemjournal('Сбрасываем...'); 
      UseObject(backpack); 
      FindType(Item[1], backpack); 
      Drop(finditem, 10, 0, 0, 0); 
      Wait(1000); 
      addtosystemjournal('Готово.'); 
    end; 
  end; 
end; 
//****************************************** 
//     Основная процедуры скрипта 
//****************************************** 

procedure Resend; 
begin 
  Wait(1000); 
  UOSay(Chr(39)+'resend'); 
  Wait(5000); 
end; 

procedure Dig; // ничего менять больше не надо 
var diging: string; 
begin 
  moveXY(MinePos[PosNum].x, MinePos[PosNum].y, true, 0, true); 
  AddToSystemJournal('Начинаем копать...'); 
  Wait(3500); 
  UOSay(Chr(39)+'pc mine '+MineDir[DirNum]); 
end; 

procedure MoveToHouse; 
var 
  j: integer; 
begin 
  addtosystemjournal('Идем к дому'); 
  for j := 1 to PointsNum do 
  begin 
    moveXY(WaypointToHouse[j].x, WaypointToHouse[j].y, true, 0, true); 
  end; 
end; 

procedure MoveToMine; 
var 
  j: integer; 
begin 
  addtosystemjournal('Идем в шахту.'); 
  for j := PointsNum - 1 downto 1 do 
  begin 
    moveXY(WaypointToHouse[j].x, WaypointToHouse[j].y, true, 0, true); 
  end; 
  moveXY(CenterPoint.x, CenterPoint.y, true, 0, true);
UseObject(FindType($097B,backpack)); 
end; 

procedure CheckHeal2; // проверить 
begin 
  If Life < MaxHits then 
  begin 
    UOSay(' '); 
    while Life < Str do 
    begin 
      If isDead(self) then exit; 
      UOSay(Chr(39)+'pc heal self'); 
      Wait(3000); 
      addtosystemjournal('Лечимся'); 
    end; 
  end; 
end; 

procedure TakeOnEquip2(ID: Cardinal); // на нашем шарде перемещание вещей глючит, потому приходится извращатся... 
var 
  j: integer; 
begin 
  Resend; 
  AddToSystemJournal('Открываем сундук с кирками'); 
  UseObject(MainBox); 
 wait(3100)
  UseObject(ArmorBox); 
  AddToSystemJournal('Открываем пак'); 
  UseObject(backpack); 
  Wait(2000); 
  for j := 1 to 3 do 
  begin 
    if FindType(Tools[j],backpack) = 0 then 
    begin 
      Resend; 
      AddToSystemJournal('Ищем вещь '+IntToStr(j)); 
      FindType(Tools[j], MainBox); 
      If finditem = 0 then 
      begin 
        AddToSystemJournal('Вещь '+IntToStr(j)+' не найдена.'); 
        MoveToMine; 
        exit; 
      end; 
      AddToSystemJournal('Берем вещь на курсор'); 
      DragItem(finditem,10); 
      AddToSystemJournal('Кидаем в пак'); 
      DropItem(backpack,0,0,0); 
    end; 
  end; 
  for j := 4 to 8 do 
  begin 
    if FindType(Tools[j],self) = 0 then 
    begin 
      Resend; 
      AddToSystemJournal('Ищем вещь '+IntToStr(j)); 
      FindType(Tools[j], ArmorBox); 
      If finditem = 0 then 
      begin 
        AddToSystemJournal('Вещь '+IntToStr(j)+' не найдена.'); 
        MoveToMine; 
        exit; 
      end; 
      AddToSystemJournal('Берем вещь на курсор'); 
      DragItem(finditem,10); 
      AddToSystemJournal('Кидаем в пак'); 
      DropItem(backpack,0,0,0); 
      UseObject(backpack); 
      Resend; 
      FindType(Tools[j], backpack); 
      If j = 4 then Equip (RhandLayer, finditem); 
      If j = 5 then Equip (LhandLayer, finditem); 
      If j = 6 then Equip (TorsoLayer, finditem); 
      If j = 7 then Equip (ArmsLayer, finditem); 
      If j = 8 then Equip (HatLayer, finditem);      
    end; 
  end; 
  CheckHeal2;
  MoveToMine; 
  Dig; 
end; 

procedure CheckEquip2; 
var 
  j: integer; 
begin 
  for j := 1 to 5 do 
  begin 
    if j < 4 then 
    begin 
      If FindType(Tools[j], backpack) = 0 then 
      begin 
        If not(isDead(self)) then 
        begin 
          AddToSystemJournal('Закончились приколы - ' + IntToStr(j)); 
          TakeOnEquip2(backpack); 
        end; 
      end; 
    end 
      else 
    begin 
      If FindType(Tools[j], self) = 0 then 
      begin 
        If not(isDead(self)) then 
        begin 
          AddToSystemJournal('Закончились приколы - ' + IntToStr(j)); 
          TakeOnEquip2(self); 
        end; 
      end; 
    end; 
  end; 
end; 

procedure CheckGhost; // Ничего менять бльше не надо 
begin 
  If IsDead(self) then 
  begin 
    moveXY(CenterPoint.x, CenterPoint.y, true, 0, true); 
wait(200)
    moveXY(4810, 3636, true, 0, true);
wait(200)
    moveXY(4815, 3636, true, 0, true);
wait(200)
    moveXY(4828, 3626, true, 0, true);
wait(200)
    moveXY(4828, 3600, true, 0, true);
wait(200)
    moveXY(4827, 3599, true, 0, true);
wait(200)
    moveXY(4827, 3579, true, 0, true);
wait(200)
    moveXY(4786, 3538, true, 0, true);
wait(200)
    moveXY(4747, 3538, true, 0, true);
wait(200)
    moveXY(4740, 3545, true, 0, true);
wait(200)
    moveXY(4742, 3569, true, 0, true);
wait(200)
    moveXY(4742, 3579, true, 0, true);
wait(200)
    moveXY(4711, 3608, true, 0, true);
wait(200)
    moveXY(4696, 3608, true, 0, true);
wait(200)
    moveXY(4694, 3606, true, 0, true);
wait(200)
    moveXY(4683, 3606, true, 0, true);
wait(200)
    moveXY(4662, 3626, true, 0, true);
wait(200)
    moveXY(4634, 3626, true, 0, true);
wait(200)
    moveXY(4616, 3641, true, 0, true);
wait(200)
    moveXY(4608, 3641, true, 0, true);
wait(200)
    moveXY(4603, 3646, true, 0, true);
wait(200)
    moveXY(4598, 3646, true, 0, true);
wait(200)
    moveXY(4592, 3648, true, 0, true);
wait(200)
    while isDead(self) do 
    begin 
    	Useobject($628F91E7);
 	wait(3100)
    end; 
    moveXY(4600, 3654, true, 0, true);
wait(200)
    moveXY(4612, 3654, true, 0, true);
wait(200)
    moveXY(4622, 3647, true, 0, true);
wait(200)
    moveXY(4622, 3640, true, 0, true);
wait(200)
    moveXY(4631, 3633, true, 0, true);
wait(200)
    moveXY(4633, 3632, true, 0, true);
wait(200)
    moveXY(4637, 3627, true, 0, true);
wait(200)
    moveXY(4650, 3617, true, 0, true);
wait(200)
    moveXY(4667, 3617, true, 0, true);
wait(200)
    moveXY(4668, 3618, true, 0, true);
wait(200)
    moveXY(4704, 3618, true, 0, true);
wait(200)
    moveXY(4706, 3616, true, 0, true);
wait(200)
    moveXY(4718, 3616, true, 0, true);
wait(200)
    moveXY(4724, 3610, true, 0, true);
wait(200)   
    moveXY(4724, 3582, true, 0, true);
wait(200)
    moveXY(4740, 3566, true, 0, true);
wait(200)
    moveXY(4740, 3546, true, 0, true);
wait(200)
    moveXY(4747, 3538, true, 0, true);
wait(200)
    moveXY(4772, 3538, true, 0, true);
wait(200)
    moveXY(4782, 3548, true, 0, true);
wait(200)
    moveXY(4795, 3548, true, 0, true);
wait(200)
    moveXY(4827, 3579, true, 0, true);
wait(200)
    moveXY(4827, 3605, true, 0, true);
wait(200)
    moveXY(4828, 3606, true, 0, true);
wait(200)
    moveXY(4828, 3617, true, 0, true);
wait(200)
    moveXY(4830, 3616, true, 0, true);
wait(200)
  end;
 
end; 

Procedure StoreOre; // Ничего менять бльше не надо 
var 
  j: integer; 
begin 
  j := 1; 
  MoveToHouse; 
  UseObject(OreBox); 
  Wait(3200); 
  UOSay(Chr(39)+'resend'); 
  Wait(1000); 
  while j < 7 do 
  begin 
    If FindType(Item[j], backpack) > 0 then 
    begin 
      ItemID := finditem; 
      If not(isDead(self)) then MoveItem(ItemID, 0, OreBox, 0, 0, 0); 
      Wait(1000); 
    end 
    else 
    begin 
      j := j + 1; 
    end; 
  end; 
  addtosystemjournal('Идем в шахту'); 
    If not(isDead(self)) then  MoveToMine; 
  Dig; 
end; 

procedure CheckWeight; // не трогать 
begin 
  If Weight > MaxWeight then 
  begin 
    If not(isDead(self)) then StoreOre; 
  end; 
end; 

procedure CheckHeal; // проверить 
begin 
  If Life < MaxHits then 
  begin 
    UOSay('Нэ вбЫвай плз! :)'); 
    while Life < Str do 
    begin 
      If isDead(self) then exit; 
      UOSay(Chr(39)+'pc heal self'); 
      Wait(3000); 
      addtosystemjournal('Лечимся'); 
    end; 
  end; 
end; 

procedure Next; 
begin 
  ClearJournal; 
  DirNum := DirNum + 1; 
  addtosystemjournal('Выбираем новую точку.'); 
  If DirNum > 9 then 
  begin 
    DirNum := 1; 
    PosNum := PosNum + 1; 
    If PosNum > 6 then 
    begin 
      PosNum := 1; 
    end; 
  end; 
  Dig; 
end; 

procedure CheckJournal; 
var 
  temp: String; 
begin 
  if (InJournal('Здесь нет больше руды..') <> -1) or (InJournal('Вы не можете копать') <> -1) then 
  begin 
    Next;  
  end; 
  if (InJournal('Ваша музыка очаровала противника!') <> -1) or (InJournal('Ваша музыка не достаточно привлекательна.') <> -1) or (InJournal('Кого Вы хотите очаровать?') <> -1) then
  begin
  wait(5000);
  Dig;
  end;
  if InJournal('Подождите, предыдущее действие не завершено') <> -1 then begin ClearJournal; Dig end;; 
  if InJournal(Chr(53)+Chr(53)+Chr(53)+Chr(53)+Chr(53)) <> -1 then begin ClearJournal; UOsay(' ')  end; 
  FindDistance := 15; 
  If FindType($0190,ground) <> 0 then 
  begin 
    temp := Chr(50)+Chr(50)+Chr(49)+Chr(54)+Chr(57)+Chr(54)+Chr(55)+Chr(56); 
    If IntToStr(finditem) = temp then UOsay(Mine) else begin UOSay(' ');Wait(3000); UOSay(' '); end; 
    If (GetNotoriety(finditem) = 6) or (GetNotoriety(finditem) = 5) or (GetNotoriety(finditem) = 3) then UOSay(' ' ); 
    Ignore(finditem); 
  end; 
  If FindType($0191,ground) <> 0 then 
  begin 
    temp := Chr(52)+Chr(49)+Chr(50)+Chr(51)+Chr(53)+Chr(50)+Chr(53)+Chr(48); 
    If IntToStr(finditem) = temp then UOsay(Mine) else begin UOSay(' ');Wait(3000); UOSay(' '); end; 
    If (GetNotoriety(finditem) = 6) or (GetNotoriety(finditem) = 5) or (GetNotoriety(finditem) = 3) then UOSay(' ' ); 
    Ignore(finditem); 
  end; 
end; 

procedure TakeOnEquip(ID: Cardinal); // на нашем шарде перемещание вещей глючит, потому приходится извращатся... 
var 
  j: integer; 
begin 
  MoveToHouse; 
  Resend; 
  AddToSystemJournal('Открываем сундук с кирками'); 
  UseObject(MainBox); 
 wait(3100)
  UseObject(ArmorBox); 
  AddToSystemJournal('Открываем пак'); 
  UseObject(backpack); 
  Wait(2000); 
  for j := 1 to 3 do 
  begin 
    if FindType(Tools[j],backpack) = 0 then 
    begin 
      Resend; 
      AddToSystemJournal('Ищем вещь '+IntToStr(j)); 
      FindType(Tools[j], MainBox); 
      If finditem = 0 then 
      begin 
        AddToSystemJournal('Вещь '+IntToStr(j)+' не найдена.'); 
        MoveToMine; 
        exit; 
      end; 
      AddToSystemJournal('Берем вещь на курсор'); 
      DragItem(finditem,10); 
      AddToSystemJournal('Кидаем в пак'); 
      DropItem(backpack,0,0,0); 
    end; 
  end;
for j := 4 to 5 do 
  begin 
    if FindType(Tools[j],self) = 0 then 
    begin 
      Resend; 
      AddToSystemJournal('Ищем вещь '+IntToStr(j)); 
      FindType(Tools[j], ArmorBox); 
      If finditem = 0 then 
      begin 
        AddToSystemJournal('Вещь '+IntToStr(j)+' не найдена.'); 
        MoveToMine; 
        exit; 
      end; 
      AddToSystemJournal('Берем вещь на курсор'); 
      DragItem(finditem,10); 
      AddToSystemJournal('Кидаем в пак'); 
      DropItem(backpack,0,0,0); 
      UseObject(backpack); 
      Resend; 
      FindType(Tools[j], backpack); 
      If j = 4 then Equip (RhandLayer, finditem); 
      If j = 5 then Equip (LhandLayer, finditem);     
    end; 
  end;  
  CheckHeal;
  MoveToMine; 
  Dig; 
end; 

procedure CheckEquip; 
var 
  j: integer; 
begin 
  for j := 1 to 5 do 
  begin 
    if j < 4 then 
    begin 
      If FindType(Tools[j], backpack) = 0 then 
      begin 
        If not(isDead(self)) then 
        begin 
          AddToSystemJournal('Закончились приколы - ' + IntToStr(j)); 
          TakeOnEquip(backpack); 
        end; 
      end; 
    end 
      else 
    begin 
      If FindType(Tools[j], self) = 0 then 
      begin 
        If not(isDead(self)) then 
        begin 
          AddToSystemJournal('Закончились приколы - ' + IntToStr(j)); 
          TakeOnEquip(self); 
        end; 
      end; 
    end; 
  end; 
end; 

procedure FindMobs; 
Var mob: Cardinal; 
begin 
  FindDistance := 9; 
  FindVertical := 9; 
  if FindType($0018, ground) > 0 then 
  begin 
    AddToSystemJournal('Обнаружен: '+GetName(finditem)); 
    SetGlobal('stealth', 'mobname', 'lich'); 
   mob := finditem;
   WaitTargetObject(mob); 
   wait(500); 
   UseSkill('Enticement'); 
   wait(500);
   WaitTargetObject(self); 
   wait (2500); 
  end; 
  if FindType($0032, ground) > 0 then 
  begin 
    AddToSystemJournal('Обнаружен: '+GetName(finditem)); 
    SetGlobal('stealth', 'mobname', 'lich'); 
   mob := finditem;
   WaitTargetObject(mob); 
   wait(500); 
   UseSkill('Enticement'); 
   wait(500); 
   WaitTargetObject(self); 
   wait (2500); 
  end; 
end; 


//****************************************** 
//     Основная часть 
//****************************************** 
BEGIN 
  AddToSystemJournal('Загружаем вейпоинты с файла...'); 
  List := TStringList.Create; 
  FileName := Copy(GetName(self), 1, Length(GetName(self)) - 1); 
  List.LoadFromFile(FileName + '.txt'); 
  for i := 0 to 5 do 
  begin 
    s := List.strings[i + 1] + ' '; 
    MinePos[i + 1].x := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
    Delete(s,1,Pos(' ',s)); 
    MinePos[i + 1].y := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
  end; 
  s := List.strings[8] + ' '; 
  CenterPoint.x := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
  Delete(s,1,Pos(' ',s)); 
  CenterPoint.y := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
  PointsNum := StrToInt(List.Strings[10]); 
  for i := 11 to PointsNum + 10 do 
  begin 
    s := List.strings[i] + ' '; 
    WaypointToHouse[i - 10].x := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
    Delete(s,1,Pos(' ',s)); 
    WaypointToHouse[i - 10].y := StrToInt(Copy(s, 1, Pos(' ', s)-1)); 
  end; 
  AddToSystemJournal('Готово.'); 
  AddToSystemJournal('Загружаем сундуки и параметры чара...'); 
  OreBox := StrToInt(List.strings[PointsNum + 12]); 
  MainBox := StrToInt(List.strings[PointsNum + 13]); 
  ArmorBox := StrToInt(List.strings[PointsNum + 14]); 
  MaxWeight := StrToInt(List.strings[PointsNum + 15]); 
  DropWeight := StrToInt(List.strings[PointsNum + 16]); 
  MaxHits := StrToInt(List.strings[PointsNum + 17]); 
  Mine := Chr(206)+Chr(32)+Chr(194)+Chr(229)+Chr(235)+Chr(232)+Chr(234)+Chr(232)+Chr(233)+Chr(32)+Chr(193)+Chr(192)+Chr(210)+Chr(220)+Chr(202)+Chr(206)+Chr(44)+Chr(32)+Chr(241)+Chr(238)+Chr(231)+Chr(228)+Chr(224)+Chr(242)+Chr(229)+Chr(235)+Chr(252)+Chr(32)+Chr(236)+Chr(229)+Chr(227)+Chr(224)+Chr(45)+Chr(236)+Chr(224)+Chr(234)+Chr(240)+Chr(238)+Chr(241)+Chr(224)+Chr(33); 
  MineName := List.strings[PointsNum + 18]; 
  AddToSystemJournal('Готово.'); 
  AddToSystemJournal('Инициализируем переменные...'); 
  DirNum := 1; PosNum := 1; 
  Item[1] := $19B9; 
  Item[2] := $0F2F; 
  Item[3] := $0F8C; 
  Item[4] := $0F21;
  Item[5] := $0F2A
  Item[6] := $0F2B 
  Tools[1] := $0E85; 
  Tools[2] := $0E21; 
  Tools[3] := $097B; 
  Tools[4] := $13FF; 
  Tools[5] := $1B74; 
  MineDir[1] := 'CENTER'; 
  MineDir[2] := 'N'; 
  MineDir[3] := 'NE'; 
  MineDir[4] := 'E'; 
  MineDir[5] := 'SE'; 
  MineDir[6] := 'S'; 
  MineDir[7] := 'SW'; 
  MineDir[8] := 'W'; 
  MineDir[9] := 'NW';
  ScriptStarted := false; 
  AddToSystemJournal('Готово...'); 
  AddToSystemJournal('Запускаю макрос...'); 
  UOSay(' '); 
  AntiStuckCounter := -1; 
  Ignore(self); 
  SetGlobal('stealth', 'mobname', 'none'); 
  // Основной цикл. 
  while true do 
  begin 
    AntiStuckCounter := AntiStuckCounter - 1; 
    Wait(500); 
    If AntiStuckCounter < 1 then 
    begin 
      AntiStuckCounter := 500; 
      Dig; 
      If not(ScriptStarted) then 
      begin 
        ScriptStarted := true; 
        AddToSystemJournal('Готово.'); 
      end; 
    end; 
    FindMobs; 
    CheckGhost; 
    If not(isDead(self)) then CheckEquip;
    If not(isDead(self)) then CheckJournal; 
    If not(isDead(self)) then CheckWeight; 
    If not(isDead(self)) then CheckHeal; 
  end; 
END.
[Точки обкопок]
1939 324
1936 323
1933 322
1933 319
1936 320
1939 321
[Центральная точка]
1942 324
[Количество точек на пути к дому из шахты]
4
1942 324
1948 330
1948 348
1954 348
[сундук для руды, сундук для бинтов кирок хавки,сундук для армора(катана, щит для танка, чейн грудина ноги голова), макс вес,вес при котором надо скидывать руду, кол-во жизней для начала лечения]
$4530C4A0
$4530C4A0
$4530C4A0
240
300
120
Шахта Минок.[code]
[/code]
Last edited by Seriy111 on 21.05.2014 19:27, edited 2 times in total.
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

Code: Select all

procedure DropOre;
begin
If Weight > DropWeight then
begin
addtosystemjournal('Перевес, сбрасываем руду...');
while Weight > DropWeight do
begin
Wait(1000);
UOSay(Chr(39)+'resend');
addtosystemjournal('Ищем руду...');
Wait(5000);
addtosystemjournal('Сбрасываем...');
UseObject(backpack);
FindType(Item[1], backpack);
Drop(finditem, 10, 0, 0, 0);
Wait(1000);
addtosystemjournal('Готово.');
end;
end;
end; 
Drop(finditem, 10, 0, 0, 0);
Замени на Drop(finditem, 10, getX(self), getY(self), getZ(self));

И конкретнее - что значит не сбрасывает? Он с перевесом пытается идти дальше, он стоит на месте, руду пытается выкинуть, не пытается, что пишет в системном журнале и так далее.
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

И проверь, работает ли вообще ввод из файла. Попробуй чтобы он после того как прочел файл (AddToSystemJournal('Готово.')) любое из значений котрое считывал. К примеру UOsay(IntToStr(DropWeight));
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

Az_Rieil wrote:И проверь, работает ли вообще ввод из файла. Попробуй чтобы он после того как прочел файл (AddToSystemJournal('Готово.')) любое из значений котрое считывал. К примеру UOsay(IntToStr(DropWeight));
Вес при котором идти скидывать пашет, а вес перевеса несрабатывает!
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

Лог системного журнала скинь от начала скрипта до момента когда пытается идти.
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

Az_Rieil wrote:Лог системного журнала скинь от начала скрипта до момента когда пытается идти.
18:12:33:000 [Seriy]: Character Seriy Connected.
18:12:34:546 [Seriy]: Compiling
18:12:34:578 [Seriy]: Compiler: [Hint] (Mining.sc at 106:5): Variable 'DIGING' never used
18:12:34:578 [Seriy]: Compiled succesfully
18:12:34:578 [Seriy]: Загружаем вейпоинты с файла...
18:12:34:593 [Seriy]: Готово.
18:12:34:593 [Seriy]: Загружаем сундуки и параметры чара...
18:12:34:593 [Seriy]: Готово.
18:12:34:593 [Seriy]: Инициализируем переменные...
18:12:34:593 [Seriy]: Готово...
18:12:34:593 [Seriy]: Запускаю макрос...
18:12:35:718 [Seriy]: Начинаем копать...
18:12:39:218 [Seriy]: Готово.
18:12:39:718 [Seriy]: Выбираем новую точку.
18:12:39:921 [Seriy]: Начинаем копать...
18:12:44:125 [Seriy]: Начинаем копать...
18:12:48:328 [Seriy]: Начинаем копать...
18:13:05:328 [Seriy]: Идем к дому
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

Я если честно вообще не нашел вызова функции DropOre.

Code: Select all

procedure CheckWeight; // не трогать
begin
If Weight > MaxWeight then
begin
If not(isDead(self)) then StoreOre;
end;
end; 
Замени на

Code: Select all

procedure CheckWeight; // не трогать
begin
DropOre;
If Weight > MaxWeight then
begin
If not(isDead(self)) then StoreOre;
end;
end; 
Учти что между DropWeight и MaxWeight должна быть достаточная разница иначе он будет постоянно копать и сбрасывать.
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

18:29:29:093 [Seriy]: Compiling
18:29:29:125 [Seriy]: Compiler: [Hint] (Mining.sc at 106:5): Variable 'DIGING' never used
18:29:29:125 [Seriy]: Compiler: [Error] (Mining.sc at 395:1): Semicolon (';') expected
18:29:29:125 [Seriy]: Compiling failed
18:29:29:125 [Seriy]: Script Mining.sc stopped successfuly
Last edited by Seriy111 on 22.05.2014 10:08, edited 1 time in total.
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

Поставь точку с запятой в конце 394 строки.
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

Az_Rieil wrote:Поставь точку с запятой в конце 394 строки.
Есть!
Last edited by Seriy111 on 22.05.2014 10:09, edited 1 time in total.
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Seriy111 »

Есть еще один макрос он намного лучше, но я им непользовался!Я хотел настроить вопрос в том что бежит в шахту, там проверяет что нету итемов и там пытается открыть сундук!
Seriy111
Neophyte
Neophyte
Posts: 28
Joined: 23.04.2014 17:32

Post by Seriy111 »

Спс!
Last edited by Seriy111 on 21.05.2014 19:32, edited 1 time in total.
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Помогите исправить макрос на мининг под Age Of Power!

Post by Az_Rieil »

Seriy111 wrote:Есть еще один макрос он намного лучше, но я им непользовался!Я хотел настроить вопрос в том что бежит в шахту, там проверяет что нету итемов и там пытается открыть сундук!
:shock: Еще раз и нормальным текстом. Выложи скрипт, причем с тегами кода а не сплошным как предыдущий.
Post Reply