кароче такая проблема скрипт логи не добирает если в паке осталось некоторое колво логов, но его недостаточно для крафта, то он просто пишет колво логов и все((((
Code: ##################################################################### ; Carpentry. v.1.13b (c) Edred ; ; Чар берет из сундука 1 пустой мешок, кладет этот мешок в сундук 2, ; берет с пола логи, крафтит из них удочки и складывает эти удочки ; в этот мешок в сундуке 2. Если логи на полу или пустые мешки ; кончились - выход ; sub carpentry() VAR Sunduk1 = '0x4017439B' ; Сериал сундука с пустыми мешками VAR Sunduk2 = '0x4000F46C' ; Сериал пустого сундука VAR Meshok = '0x0E76' ; Тип мешка VAR Logi = '0x1BDD' ; Тип логов VAR Rubanok = '0x1031' ; Тип инструмента карпентера VAR Udochka = '0xDBF' ; Тип удочки VAR Kolvo = 460 ; Брать логов (2 лога = 1 удочка) VAR MeshSer, j, k While TRUE UO.FindType( Logi, -1, 1 ) ; Ищем логи на полу 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 ) > 0 ; Пока в паке есть логи UO.Print('Ostalos ' + Str( UO.Count( Logi ) ) + ' logov' ) UO.DeleteJournal() UO.CancelMenu() UO.WaitMenu ('Carpentry', 'Fishing Poles', 'Fishing Poles', 'fishing pole' ) 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
|