Скрипт для А
нтареса, так как только там есть энчатинг.
Для работы скрипта, необходимы рядом с форжей, два сундука. В первый кидаем много молотков, дезенчат тулсов, ингов озона, шадоу, блю, кринита, ская, стила. Так же кидаем туда еды (фиш стейки). Если каких то ингов нет, ничего страшного. Если инги или инструмент закончатся, закончится и скрипт. Если закончится еда, скрипт продолжит работу, но смерть чара на вашей совести. Во второй сундук кидаем пустые мешки.
Скрипт кует горжетки, ломает их тулсом. Скидывает в первый сундук мешки, наполняя их энчатами (по 100). В общем все в коментах. Дерзайте.
Code:
##########################################
# Enchanting v.1.00
# Shard - Antares
# The author - Ururu
# The proof-reader - пожелал остатся неизвестным
##########################################
# Для работы скрипта необходимо:
##########################################
# 1) Убедитель что в паке и на чаре нет горжеток =)
# В паке недолжно быть мешков левых.
##########################################
# 2) рядом с форжей поставить 2 сундука
##########################################
# 3) в первый сундук накидать металлы (какие есть):
# а) Ozone
# б) Shadow
# в) Blue
# г) Crinit
# д) Sky
# е) Steel
# З.Ы. Других металлов быть не должно !!!
##########################################
# 4) туда же (в первый сундук) кидаем:
# а) молотки
# б) дезенчат тулсы
# в) еду (фиш стейки)
##########################################
# 5) во второй сундук нужно положить пустых мешков
##########################################
# 6) тут заменить ID, на ID своих сундуков
VAR Sunduk = '0x40395869' ; ID сундука с металом, инструментом
VAR Sunduk2 = '0x4038B93C' ; ID сундука с пустыми мешками
##########################################
##########################################
VAR Hammer = '0x13E3' ; тип Smith's Hammer
VAR Tools = '0x1EB8' ; тип Disenchanting Tools
VAR Steaks = '0x097B' ; тип Fish Steaks
VAR Enchant = '0x1869' ; тип Armor Enchant
VAR Bag = '0x0E76' ; тип Bag
VAR LastTimer
var ID
sub Start()
UO.UseObject(Sunduk)
Wait(500)
CheckLag()
UO.UseObject(Sunduk2)
Wait(500)
CheckLag()
Repeat
Main()
Wait(100)
CheckLag()
Until UO.Dead()
End Sub
;*****************************************
; Основа
;*****************************************
Sub Main()
UO.FindType(Hammer,'0','2')
CheckLag()
If UO.FindCount() Then
UO.Print("The hammer is found")
Wait(500)
Else
FirstTake()
Wait(100)
End If
UO.FindType(Tools,'0x0488','2')
CheckLag()
If UO.FindCount() Then
UO.Print("The Disenchanting Tools is found")
Wait(500)
Else
SecondTake()
Wait(100)
End If
UO.FindType(Steaks,'0','2')
CheckLag()
If UO.FindCount() Then
UO.Print("The Meal is found")
Wait(500)
Meal()
Wait(100)
Else
ThirdTake()
Wait(100)
End If
FirstIngots()
Wait(100)
UO.FindType(Enchant,'0x000F','2')
Wait(100)
If UO.FindCount() > 99 Then
Shift()
Wait(500)
CheckLag()
Shift2()
Wait(500)
CheckLag()
Shift3()
Wait(500)
CheckLag()
Else
Wait(50)
End If
End Sub
;*****************************************
; Поиск мешков в сундуке
;*****************************************
Sub Shift()
UO.FindType(Bag,'-1',Sunduk2)
If UO.FindCount() Then
UO.Grab(1,'finditem')
Wait(500)
CheckLag()
Else
UO.Print("The bag is not found")
Wait(100)
UO.Exec('Terminate All')
End If
End Sub
;*****************************************
; Разгрузка энчатов в мешок
;*****************************************
Sub Shift2()
UO.FindType(bag,'-1','backpack')
If UO.FindCount() Then
ID=UO.GetSerial('finditem')
Else
UO.Print('The bag is not found')
End If
UO.SetReceivingContainer(ID)
UO.Findtype(enchant,'-1','backpack')
While UO.FindCount()
UO.Grab(0,'finditem')
wait(500)
End If
UO.FindType(enchant,'-1','backpack')
Wend
UO.UnSetReceivingContainer()
End Sub
;*****************************************
; Скидывание мешка
;*****************************************
Sub Shift3()
UO.FindType(Bag)
If UO.FindCount() Then
UO.MoveItem('finditem','1',Sunduk)
Wait(500)
CheckLag()
Else
CheckLag()
End If
End Sub
;*****************************************
; Поиск молотка
;*****************************************
Sub FirstTake()
UO.FindType(Hammer,'0',Sunduk)
If UO.FindCount() Then
UO.Grab(1,'finditem')
Wait(500)
CheckLag()
Else
UO.Print("The hammer is not found")
Wait(100)
UO.Exec('Terminate All')
End If
End Sub
;*****************************************
; Поиск дезенчат тулса
;*****************************************
Sub SecondTake()
UO.FindType(Tools,'0x0488',Sunduk)
If UO.FindCount() Then
UO.Grab(1,'finditem')
Wait(500)
CheckLag()
Else
UO.Print("The Disenchanting Tools is not found")
Wait(100)
UO.Exec('Terminate All')
End If
End Sub
;*****************************************
; Поиск еды
;*****************************************
Sub ThirdTake()
UO.FindType(Steaks,'0',Sunduk)
If UO.FindCount() Then
UO.Grab(10,'finditem')
Wait(500)
CheckLag()
Else
UO.Print("The Meal is not found")
Wait(100)
UO.Print("I shall die of famine")
End If
End Sub
;*****************************************
; Прием пищи
;*****************************************
Sub Meal()
UO.DeleteJournal()
UO.FindType(Steaks,'0','2')
Repeat
UO.UseType(Steaks)
Wait(100)
CheckLag()
Until UO.InJournal("не можете")
End Sub
;*****************************************
; Поиск металла
;*****************************************
Sub FirstIngots()
UO.FindType('0x1BF2','-1',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
Search()
Wait(500)
Else
SecondIngots()
Wait(500)
End If
End Sub
;*****************************************
; Второй поиск металла
;*****************************************
Sub SecondIngots()
UO.FindType('0x0F8E','-1',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
Search()
Wait(500)
Else
UO.Print("Metal is not found")
Wait(500)
UO.Print("The script comes to the end")
Wait(1000)
UO.Exec('Terminate All')
End If
End Sub
;*****************************************
; Основной модуль запуска ковки
;*****************************************
Sub Search()
UO.FindType('0x1BF2','0x048F',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Ozone is found")
Ozone()
Wait(500)
Else
UO.Print("Metal Ozone is not found")
Wait(100)
End If
UO.FindType('0x1BF2','0x0770',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Shadow is found")
Shadow()
Wait(500)
Else
UO.Print("Metal Shadow is not found")
Wait(100)
End If
UO.FindType('0x1BF2','0x078D',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Blue is found")
Blue()
Wait(500)
Else
UO.Print("Metal Blue is not found")
Wait(100)
End If
UO.FindType('0x0F8E','0x0487',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Crinit is found")
Crinit()
Wait(500)
Else
UO.Print("Metal Crinit is not found")
Wait(100)
End If
UO.FindType('0x1BF2','0x0492',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Sky is found")
Sky()
Wait(500)
Else
UO.Print("Metal Sky is not found")
Wait(100)
End If
UO.FindType('0x1BF2','0x042C',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Steel is found")
Steel()
Wait(500)
Else
UO.Print("Metal Steel is not found")
Wait(100)
End If
UO.FindType('0x1BF2','0x03A4',Sunduk)
Wait(100)
If UO.GetQuantity('finditem') > 20 Then
UO.Print("Metal Dark is found")
Dark()
Wait(500)
Else
UO.Print("Metal Dark is not found")
Wait(100)
End If
End Sub
;*****************************************
; Ковка из Ozone
;*****************************************
Sub Ozone()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x048F',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Colored Armor','Ozone Armor','Ozone Armor','Ozone Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Shadow
;*****************************************
Sub Shadow()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x0770',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Blacksmithing','Colored Armor','Shadow Armor','Shadow Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Blue
;*****************************************
Sub Blue()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x078D',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Blacksmithing','Colored Armor','Colored Armor','Blue Armor','Blue Armor','Blue Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Crinit
;*****************************************
Sub Crinit()
UO.DeleteJournal()
UO.FindType('0x0F8E','0x0487',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x0F8E')
UO.WaitMenu('Blacksmithing','Colored Armor','Crinit Armor','Crinit Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Sky
;*****************************************
Sub Sky()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x0492',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Sky Armor','Sky Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Steel
;*****************************************
Sub Steel()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x042C',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Steel Armor','Steel Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Ковка из Dark
;*****************************************
Sub Dark()
UO.DeleteJournal()
UO.FindType('0x1BF2','0x03A4',Sunduk)
CheckLag()
If UO.FindCount() Then
UO.Grab(20,'finditem')
Wait(200)
CheckLag()
UO.DeleteJournal()
UO.WaitTargetType('0x1BF2')
UO.WaitMenu('Dark Armor','Dark Gorget')
UO.UseType(Hammer)
Repeat
Wait(500)
LastTimer=uo.timer()
Until UO.InJournal("положили") Or UO.InJournal("не удалось") Or UO.Timer()>LastTimer+100
CheckLag()
Else
Wait(100)
End If
UO.FindType('0x1413','-1','2')
While UO.FindCount()
UO.WaitTargetType('0x1413')
Wait(100)
UO.UseType(Tools)
CheckLag()
UO.FindType('0x1413','-1','2')
Wend
Wait(100)
Clearing()
End Sub
;*****************************************
; Разгрузка излишков металла
;*****************************************
Sub Clearing()
UO.FindType('0x1BF2','-1','2')
While UO.FindCount()
UO.MoveItem('finditem','0',Sunduk)
Wait(300)
CheckLag()
UO.FindType('0x1BF2','-1','2')
Wend
Wait(500)
UO.FindType('0x0F8E','-1','2')
While UO.FindCount()
UO.MoveItem('finditem','0',Sunduk)
Wait(300)
CheckLag()
UO.FindType('0x0F8E','-1','2')
Wend
Wait(500)
End Sub
;*****************************************
; Чек лаг =)
;*****************************************
Sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
Repeat
n=n+1
Wait(200)
Until UO.InJournal("backpack|Backpack") Or n>50
End Sub