Форум работает в тестовом режиме. Все данные были перенесены со старого сайта 2018 года. Некоторая информация может быть недоступна, например вложения или хайды. Просьба сообщать о данных случаях через функционал "Жалоба", прямо под постом, где отсуствуют данные из хайда или проблемы с вложением.
Могут быть проблемы в "выкидыванием" с форума (слетевшей авторизацией). Нужно собрать статистику таких случаев.
Есть Тема, куда можете сообщить о проблемах с сайтом либо просто передать привет.

Изготовление лунаргентов для квест на Нублесс

Рег
28 Ноя 2015
Сообщения
126
Реакции
0
Наработка для изготовления Lunargent, нужно прилететь на торговый этаж ивори ( к урне) , само собой с итемами для изготовления.
Делает moon dust пока хватает MS , затем Lunargent пока хватает moon dust
var
Npc: TL2Npc;Item: TL2Item;

function CheckItemCount (const itemID: Integer; const quest: Boolean = False) : Integer;
var tempItem: TL2Item;
begin
if quest then Inventory.Quest.ByID(itemID, tempItem)
else Inventory.User.ByID(itemID, tempItem);
Result := tempItem.Count;
end;

procedure moondust;
begin
Engine.DlgSel(3);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(2);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
end;

procedure lunargent;
begin
Engine.DlgSel(9);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(3);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
Engine.DlgSel(1);
delay(300);
end;

procedure k_urne;
begin
Engine.settarget(31149);
delay(300);
Engine.MoveToTarget(20);
delay(300);
Engine.DlgOpen;
delay(300);
Engine.DlgSel(2);
delay(300);
Engine.DlgSel(1);
delay(1000);
end;

begin
k_urne;

while true do begin
if (CheckItemCount(6013) > 10) and (CheckItemCount(6018) > 1) then begin
//больше 10 шардов и больше 1 волканик
print('делаем мун даст');
moondust;
end;

if (CheckItemCount(6013) < 10) and (CheckItemCount(6023) > 10)
and (CheckItemCount(6019) > 1) then begin
//меньше 10 шардов , больше 10 мундаст и больше 1 квиксилвер
print('делаем лунаргент');
lunargent;
end;

end;
end.
 
Ну стоять там пол часа и крафтить , тоже не лучшая трата времени)
 
Оставлю и я свой.
Код:
uses
    SysUtils;

procedure MixAll(id1, count1, id2, count2: integer);
var
    dialog: string;
    it: TL2Item;
    tempCount1, tempCount2: integer;
begin
    if count1 > 2 then tempCount1 := 2 else tempCount1 := 1;
    if count2 > 2 then tempCount2 := 2 else tempCount2 := 1;

    while inventory.user.ById(id1, it) and (it.count >= count1)
        and inventory.user.ById(id2, it) and (it.count >= count2) and engine.Delay(1000) do
    begin
        {
            Insert Ingredients.
        }
        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents U_I_Insert');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents x_' + IntToStr(tempCount1) + '_I_' + IntToStr(id1));
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents urn');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        {
            Insert Catalyst.
        }
        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents U_C_Insert');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents x_' + IntToStr(tempCount2) + '_C_' + IntToStr(id2));
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents urn');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        {
            Select Temperature.
        }
        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents 31149-5.htm');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents tmp_1');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents urn');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        {
            Mix Ingredients.
        }
        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents 31149-6.htm');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;

        dialog := engine.DlgText;
        engine.BypassToServer('Quest 373_SupplierOfReagents urn');
        repeat
            engine.Delay(100);
        until dialog <> engine.DlgText;
    end;
end;

begin
    MixAll(6013, 10, 6018, 1); // Moon Dust: 10 Moonstone Shards, 1 Volcanic Ash
    MixAll(6023, 10, 6019, 1); // Lunargent: 10 Moon Dusts, 1 Quicksilver
    MixAll(6015, 10, 6017, 1); // Demonplasm: 10 Demon Blood, 1 blood Root
    MixAll(6025, 10, 6020, 1); // Demonic Essence: 10 Demonplasms, 1 Sulfur
    MixAll(6012, 10, 6018, 1); // Magma Dust: 10 Lava Stones, 1 Volcanic Ash
    MixAll(6022, 10, 6020, 1); // Fire Essence: 10 Magma Dusts, 1 Sulfur
    MixAll(6028, 1 , 6031, 1); // Hellfire Oil: 1 Fire Essence, 1 Demonic Essence
end.
 
Назад
Сверху