Перейти к содержанию
LineaAge II Forum L2Corvet

Автоматический Крафт


Лиса

Рекомендуемые сообщения

Вот скрипт для адреналина который можно переделать под крафт любого ресурса :

 

Чтоб всё работало и не кончалась мана надо чтоб в инвентаре крафтера лежали все необходимые ресурсы, крафтера подвести к НПЦ баферу и запустить скрипт. Программа остановится если кончатся ресы или если будет сделано заданное количество ресов.

 

var 

  obj : TL2NPC; 
obj21 : TL2Effect;
 mp,i : Integer;
    s : string;

 

function ItemCount(id: integer): int64;  overload;     // подсчет кол-ва итемов по ID
var i: integer;
begin
  result:= 0;                                          
  for i:= 0 to Inventory.User.Count-1 do begin         // пробегаемся по инвентарю юзера
    if (Inventory.User.Items(i).ID = id) then          // если id совпали, то
      Inc(result, Inventory.User.Items(i).Count);      // увеличиваем результат на кол-во предметов в стаке
  end; 
  for i:= 0 to Inventory.Quest.Count-1 do begin        // аналогично для квестового инвентаря
    if (Inventory.Quest.Items(i).ID = id) then
      Inc(result, Inventory.Quest.Items(i).Count); 
  end;
end;

 

function ItemCount(const Name: string): int64;  overload;   // подсчет кол-ва итемов по названию
var i: integer;
begin
  result:= 0;
  for i:= 0 to Inventory.User.Count-1 do begin         // пробегаемся по инвентарю юзера
    if (Inventory.User.Items(i).Name = Name) then      // если названия совпали, то
      Inc(result, Inventory.User.Items(i).Count);      // увеличиваем результат на кол-во предметов в стаке
  end; 
  for i:= 0 to Inventory.Quest.Count-1 do begin        // аналогично для квестового инвентаря
    if (Inventory.Quest.Items(i).Name = Name) then
      Inc(result, Inventory.Quest.Items(i).Count); 
  end;
end;

    
procedure Restore; overload;

begin
// NPC  бафер
   engine.SetTarget(35652);
   delay(100);
  
   engine.dlgOpen();           
   delay(100);

   engine.dlgsel(1);
   delay(100);

   
      Engine.BypassToServer('04');         
    delay(100);
//    print(user.curMP);

end;

 

//main programm
begin

  mp := user.curMP;

  while (ItemCount(1785) > 53) and (ItemCount(1460) > 1) and (ItemCount(1465) < 100000) do   // 100000 - количество сосок, ID 1465
    begin 
      Engine.MakeItem(3);  // 3 - Номер по порядку (от первого по шесть в строке) в списке в окна крафта 
      delay(180);
      if user.curMP < 100 then Restore;
//      delay(180);
      mp := user.curMP;
    end;

end.

Изменено пользователем Лиса
Ссылка на комментарий
Поделиться на другие сайты

И на адреналине, и на волкере все прекрасно крафтится интерфейсом. Зачем огород городить?..  Максимум - скрипт на заливку маны от нпц.

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, LegioneR сказал:

на русском адреналине крафт не работает

если ты про вкладку-разное-крафт и выставляеш просто номера с книги рецептов то работает через интерфейс и на руском кряк и ваще на любом, хз , если я про такой интерфейс правильно понил

Ссылка на комментарий
Поделиться на другие сайты

15.02.2020 в 06:29, LegioneR сказал:

на русском адреналине крафт не работает

Есть такая проблема. Но убей Бог, не понимаю, нахрена эти танцы со скриптом и постоянного ковыряния в нем, если легче накатить английский адрик?...

Ссылка на комментарий
Поделиться на другие сайты

Танцы в целом понятные. Когда надо скрафтить чего то десятки или сотни тысяч делается скрипт. Русский адрик то же работает. Та есть такая a.dll её когда меняешь на правильную всё работает как надо и скрипты и крафт.

Ссылка на комментарий
Поделиться на другие сайты

15.02.2020 в 06:29, LegioneR сказал:

на русском адреналине крафт не работает

 у меня русский адреналин ... Был поставлен патчи и все работает аж в путь. Надо просто напрячься и поискать

 

 

Ссылка на комментарий
Поделиться на другие сайты

 Простенький скрипт крафта в Гиране , сделанный на коленке . Без кучи переменных и с простым юзаньем уже встроенной функции бота . Без нагромождений циферок и подсчетов . Параллельно просто подключаем крафт на боте . Писать скрипты не великая наука. Умение писать их просто и соразмерно  бесценно..  

 

 

 

var obj:TL2Effect;

begin
while 1<>2 do begin
delay(150); 
if not User.Buffs.Byid(4342,obj) or (obj.EndTime<30000)
then begin
Engine.MoveTo(83672, 148024, -3384);

  if User.inrange(83672, 148024, -3384, 150) then begin 

        delay(500); // время равное времени опустошению бара 
            Engine.SetTarget(35652);
          Engine.MoveToTarget(-20);
                  delay(550);
          Engine.DlgOpen();
                 delay(550);
          Engine.DlgSel('БАФФ ДЛЯ ИГРОКА');
          delay(550);
          
          Engine.DlgSel('Restore');
          delay(550);
          Engine.CancelTarget;
          delay(5500);
          
         
          
      
          
          
end;
end;
end;
end.

Ссылка на комментарий
Поделиться на другие сайты

19.02.2020 в 20:07, Лиса сказал:

Танцы в целом понятные. Когда надо скрафтить чего то десятки или сотни тысяч делается скрипт

С какого это перепугу?!

Я соски миллионами варю интерфейсом без проблем. Варил столько же и всего остального, просто ресов нет на столько. Щас кожу час варил, тупо оставил и пошел с детьми гулять, пришел, оно еще варит. Так нахрена скрипт?

Вообще непонятные танцы. Только если - беструсанцы.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...