Page 1 of 1

Скрипт на удочки (размещен в Scripts!) не пашет

Posted: 2004-12-28 16:44:14
by MitAl
Вот этот скрипт прекрасно берет первый мешок из сундука, заполняет его, но потом почему-то не берет новый мешок (даже его не перетаскивает) и удочки все валятся в бэкпак. Может поможете разобраться с этим?

Code: Select all

##################################################################### 
; Carpentry. v.1.12b (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', 'Weapons & Tools', 'Weapons & Tools', 'fishing' ) 
         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 


Posted: 2004-12-28 16:45:51
by autopilot
У меня таже фигня не заморачивайсяс удочками качай на штафах

Posted: 2004-12-28 16:51:16
by Sfagnum
autopilot wrote:У меня таже фигня не заморачивайсяс удочками качай на штафах
удочки деньги стоят...

Posted: 2004-12-28 17:59:44
by AGRS
autopilot wrote:У меня таже фигня не заморачивайсяс удочками качай на штафах
Какая связь боукрафта и карпентри?

Posted: 2004-12-28 18:03:58
by AGRS
Для начала вместо While UO.Count( Logi ) > 0 поставь While UO.Count( Logi ) > 1. На ДРВ если меня не глючит может и 1 лог сфизлиться и скрипт встанет.

Posted: 2004-12-28 18:04:38
by MitAl
autopilot wrote:У меня таже фигня не заморачивайсяс удочками качай на штафах
Спасибо, у меня боукрафт уже давно ГМ

Posted: 2004-12-28 18:08:02
by AGRS
А далее не забудь открыть оба сундука самостоятельно, и пак тоже. Скрипт этого не умеет.

Posted: 2004-12-28 18:22:43
by MitAl
AGRS wrote:А далее не забудь открыть оба сундука самостоятельно, и пак тоже. Скрипт этого не умеет.
Спасибо за совет, но к сожалению я перед запуском скрипта всегда оба сундука открывал. Попробовал и пак открыть на всякий случай - ситуация не изменилась :-(
а про 1 лог обязательно учту

Posted: 2004-12-28 19:22:11
by BETEPAH
AGRS wrote:А далее не забудь открыть оба сундука самостоятельно, и пак тоже. Скрипт этого не умеет.
А что добавить useobject ("chest") не судьба ?

Posted: 2004-12-28 21:22:22
by AGRS
BETEPAH wrote:
AGRS wrote:А далее не забудь открыть оба сундука самостоятельно, и пак тоже. Скрипт этого не умеет.
А что добавить useobject ("chest") не судьба ?
Делать мне нечего, только в чужие скрипты исправления вносить. :)

Posted: 2004-12-28 22:55:26
by Edred
BETEPAH wrote:
AGRS wrote:А далее не забудь открыть оба сундука самостоятельно, и пак тоже. Скрипт этого не умеет.
А что добавить useobject ("chest") не судьба ?
Я прекрасно себе до ГМа карпу давным-давно прокачал именно на этом скрипте. Было это очень давно, скрипты я писал еще корявые (видно же по нему), так что не обессудь. Не додумался тогда вставить открытие сундуков в скрипт... :lol: