OrionClient BlacksmithScript UORemedy: различия между версиями
Sova (обсуждение | вклад) |
Sova (обсуждение | вклад) |
(не показаны 3 промежуточные версии этого же участника) | |
(нет различий)
|
Текущая версия на 20:18, 13 марта 2020
Скрипт тестировался на Orion Assistant v3.0.0.0
Требования : Tinkering 35+, слитки железа в сумке, 1 Tinker Tools для старта, Salvage Bag ( продается к вендора ... the Provisioner ), экипированное оружие для прокачки Arms Lore.
Скрипт сам крафтит Tinker Tools, Tongs, указанный в настройках предмет, для переплавки используется Salvage Bag.
Так же, прокачивается Arms Lore на экипированном оружии.
В зависимости от уровня навыка, убираем // возле crafting_type и crafting_button необходимого предмета.
var config = {
'tongs' : 0x0FBB,
'tongs_keep' : 2,
'tongs_button' : 198,
'tinkerTools' : 0x1EB8,
'tinkerTools_keep' : 2,
'tinkerTools_button' : 128,
'ingot' : 0x1BF2,
'salvage_bag' : 0x4016C667,
//////////Dagger 0 - 49.6
//'crafting_type' : 0x0F52,
//'crafting_button' : 30,
/////////Short spear 49.6 - 95.0
//'crafting_type' : 0x1403,
//'crafting_button' : 44,
/////////Royal Circlet 95.0 - 120.0
'crafting_type' : 0x2B6F,
'crafting_button' : 100,
};
function start()
{
while(!Player.Dead())
{
var _ingots = Orion.FindType(config["ingot"]);
if(_ingots && _ingots.length > 0)
{
var _ingots_qty = Orion.Count(config["ingot"]);
if(_ingots_qty > 50 )
{
Orion.CancelWaitGump();
arms_lore();
Orion.Print("Total ingots left -> "+_ingots_qty);
check_and_craft(config["tinkerTools"], config["tinkerTools_keep"], config["tinkerTools_button"]);
check_and_craft(config["tongs"], config["tongs_keep"], config["tongs_button"]);
craft(config["tongs"],config["crafting_button"]);
Orion.Wait(1000);
smelt();
Orion.Wait(1000);
}
else
{
Orion.PauseScript();
Orion.Wait(1000);
}
}
}
}
function arms_lore()
{
var _target = Orion.ObjAtLayer(1).Serial();
Orion.WaitTargetObject(Orion.ObjAtLayer(1).Serial());
Orion.UseSkill("Arms Lore");
Orion.Wait(1000);
}
function smelt()
{
var _crafted = Orion.FindType(config["crafting_type"]);
if(_crafted && _crafted.length > 0)
{
Orion.MoveItem(_crafted[0],0,config['salvage_bag']);
Orion.Wait(1000);
Orion.RequestContextMenu(config["salvage_bag"]);
Orion.WaitContextMenu(config["salvage_bag"], 0);
Orion.WaitForContextMenu(1000);
}
}
function check_and_craft(_item, _qty, _button)
{
while (Orion.FindType(_item).length < _qty)
{
Orion.Print("[i] Crating required tool")
craft(config["tinkerTools"],_button);
Orion.Wait(1000);
}
}
function craft(_tools, _button)
{
Orion.UseType(_tools);
Orion.WaitGump(Orion.CreateGumpHook(_button));
if(Orion.WaitForGump(2000))
{
Orion.WaitGump(Orion.CreateGumpHook(0));
Orion.Print("Crafted -> Closed?");
Orion.Wait(10000); //Hardcoded! Fix!
}
else
{
Orion.Print("Error crafting item, WaitForGump timeout exceeded");
//Orion.PauseScript();
}
}