sub Carpentry() uo.Exec('exec Reconnect') VAR Sunduk1 = '0x40460C3C' ; Сериал сундука с пустыми мешками VAR Sunduk2 = '0x40460BFE' ; Сериал пустого сундука VAR Meshok = '0x0E76' ; Тип мешка VAR Logi = '0x1BDD' ; Тип логов VAR Rubanok = '0x1028' ; Тип инструмента карпентера VAR Udochka = '0x0E89' ; Тип палки VAR Kolvo = 600 ; Брать логов (3 лога = 1 палка) VAR MeshSer, j, k While TRUE UO.FindType( Logi, -1, Sunduk1 ) ; Ищем логи на полу UO.Grab( Str( Kolvo ), 'finditem' ) ; Кладем логи в пак wait( 2000 ) If UO.FindCount() == 0 Then UO.Print("Logs not found, script terminated") return Endif UO.FindType( Meshok, -1, Sunduk1 ) ; Ищем мешок в сундуке 1 MeshSer = UO.GetSerial( 'finditem' ) UO.Grab( '1', 'finditem' ) ; Кладем его в бэкпак wait( 2000 ) UO.MoveItem( MeshSer, 0, Sunduk2 ) wait( 2000 ) While UO.Count( Logi ) > 10 ; Пока в паке есть логи UO.Print('Ostalos ' + Str( UO.Count( Logi ) ) + ' logov' ) UO.DeleteJournal() UO.CancelMenu() UO.WaitMenu ('Carpentry', 'Weapons & Tools', 'Weapons & Tools', 'quarter staff' ) UO.UseType( Rubanok ) k = 0 while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 ) k = k + 1 wait(500) wend ; Wait( 14000 ) ; Скрафтили палку ; Сразу переложим ее в мешок if UO.Count( Udochka ) > 0 then UO.FindType( Udochka, -1, 'backpack' ) UO.MoveItem( 'finditem', 0, MeshSer ) wait( 2000 ) UO.Print( 'Udochka perelozhena' ) end if Wend Wend end sub sub Reconnect() var rflag rflag=1 repeat while (uo.ObjAtLayer('Bpack')=='') if rflag then rflag=0 end if wait(20000) uo.Say('') wait(3000) uo.Say('') wait(3000) uo.Say('') wait(3000) uo.Ldblclick(357,164) uo.Lclick(616,459) wait(3000) wend wait(3000) if (rflag==0) then rflag=1 end if until false end sub
|