На вот попробуй скрипт, но прежде настрой
Code:
var Delay = 10, Pause = 1000, ThreadsNeed = 1, ClothNeed = 10, ClothMove = 500, ThreadsMove = 50
Pause - Задержка перемещения вещей на сервере
ThreadsNeed,
ClothNeed - Сколько нужно конкретного ресусра для крафта 1-ой робы.
ClothMove,
ThreadsMove - Сколько перетаскивать в пак (содрал со скрипта, который ты выложил)
Ну и сам скрипт
Code:
sub Tailoring()
Dim t_Resources[2]
t_Resources[0] = '0x175D' ;Тип ткани
t_Resources[1] = '0x0FA0' ;Тип ниток
var t_SewingKit = '0x0F9D', t_Robe = '0x1f01', t_Bag = '0x0e76', t_Steaks = '0x0c77'
var id_Container = '0x41515b94', id_RecContainer = '0x41234814'
var Delay = 10, Pause = 1000, ThreadsNeed = 1, ClothNeed = 10, ClothMove = 500, ThreadsMove = 50
var msg = 'ou put|fail', Time, id_Bag, ResMove, i
UO.UseObject(id_Container)
UO.UseObject(id_RecContainer)
While true
If UO.Count(t_Resources[0]) >= ClothNeed and UO.Count(t_Resources[1]) >= ThreadsNeed then
If UO.Targeting() then
UO.CancelTarget()
Endif
DelJournal(msg)
Time = UO.Timer()
UO.WaitMenu('Cloth', 'Shirts', 'Shirts', 'plain dress')
UO.WaitTargetType(t_Resources[0])
UO.UseType(t_SewingKit)
Repeat
Wait(100)
Until UO.InJournal(msg) or Time + Delay * 10 <= UO.Timer()
else
While UO.Count(t_Robe)
UO.FindType(t_Bag, -1, id_RecContainer)
If UO.FindCount() then
id_Bag = UO.GetSerial('finditem')
UO.UseObject(id_Bag)
Wait(100)
UO.FindType(-1, -1, id_Bag)
If UO.FindCount() < 255 then
UO.FindType(t_Robe, -1, 'backpack')
If UO.FindCount() then
CheckLag()
UO.MoveItem('finditem', -1, id_Bag)
Wait(Pause)
else
UO.Print('Непонятная ошибка 404 :Р')
Return
Endif
else
UO.Ignore(id_Bag)
Endif
else
UO.Print('Вроде как закончились пустые сумки')
Return
Endif
Wend
UO.IgnoreReset()
For i = 0 to 1
UO.FindType(t_Resources[i], -1, id_Container)
If UO.FindCount() then
If i > 0 then
ResMove = ThreadsMove
else
ResMove = ClothMove
Endif
CheckLag()
UO.MoveItem('finditem', ResMove - UO.Count(t_Resources[i]), 'backpack')
Wait(Pause)
else
UO.Print('В ' + id_Container + ' не найден один из ресурсов.')
Return
Endif
Next
Endif
Eat(id_Container, t_Steaks, Pause)
Wend
Endsub
Sub Eat(id, type, pause)
var msg = 'simply|ou can|full', Time, Delay = 10
DelJournal(msg)
Time = UO.Timer()
Repeat
If UO.Count(type) then
UO.UseType(type)
Wait(100)
else
UO.FindType(type, -1, id)
If UO.FindCount() then
CheckLag()
UO.MoveItem('finditem', 20, 'backpack')
Wait(Pause)
else
UO.Print('Еды нету')
Return
Endif
Endif
Until UO.InJournal(msg) or Time + Delay * 10 <= UO.Timer()
Endif
Sub DelJournal(msg)
While UO.InJournal(msg)
UO.SetJournalLine(UO.InJournal(msg) - 1, '')
Wend
Endsub
Sub CheckLag()
DelJournal('ackpack')
UO.Click('backpack')
Repeat
Wait(50)
Until UO.InJournal('ackpack')
Endsub
Сразу говорю, что работоспособность не проверял, если будут ошибки - пиши.
PS Проще новый скрипт написать, чем ломать можг над чужими, которые без отступов и по журналу что-то там чекают
