Yoko
http://forum.yoko.com.ua/

срочно нужна помощь!!!!
http://forum.yoko.com.ua/viewtopic.php?f=17&t=14475
Page 1 of 1

Author:  kama26 [ 2009-02-26 19:20:31 ]
Post subject:  срочно нужна помощь!!!!

Люди где ошибка в скрипте ???

Code:
sub main()
   VAR Sunduk = "0x400E0DD2"
   VAR bytil = "0x0F0E"
   VAR reg = "0x0F88"
   VAR pestik = "0x0E9B"
   VAR lesepoison = "0x0F0A"
   VAR k
 
     UO.Set('norbcalc',1)
     UO.Set('norbcheck',1)
     
 
   While TRUE
      If UO.Count( bytil ) == 0 Then
         UO.FindType( bytil, '-1', Sunduk )
         If UO.FindCount() == 0 Then
            UO.Print("Leathers not found, script terminated")
            return
         Endif
         UO.Grab( '100', 'finditem' )
         wait(500)
         while UO.Count( bytil ) == 3
            wait(100)
         wend
      Endif
     
          If UO.Count( reg ) == 0 Then
         UO.FindType( reg, '-1', Sunduk )
         If UO.FindCount() == 0 Then
            UO.Print("Leathers not found, script terminated")
            return
         Endif
         UO.Grab( '300', 'finditem' )
         wait(500)
         while UO.Count( reg ) == 3
            wait(100)
         wend
      Endif
   
      UO.DeleteJournal()
     
      wait(100)
      UO.UseType( pestik )
      UO.OnGump('0x0004f288','0x0000003a','17')
      UO.Recall('0x0000003b','802')
     
      k = 0
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 70)
 
         k = k + 1
         wait(300)
      wend
      if UO.Count( lesepoison ) > 10 then
         uo.useobject('0x400B14EC')
         UO.WaitTargetType( lesepoison )
         wait( 500 )
         while UO.Count( lesepoison ) > 10
            wait(100)
         wend
         wait(100)
      endif
   Wend
  wait(100)
end sub

мин через 5-20 вылетает критическая ошибка (((
помогите плз

Author:  Millerbeer [ 2009-02-26 21:49:31 ]
Post subject: 

Вот один цикл непонятный
Code:
while UO.Count( bytil ) == 3 
            wait(100)
         wend

Пока бутылок 3 ждать 0,1 сек, т.е. как тока бутылок останется 3 штуки, скрипт повиснет в ожидании и вылетит в итоге

Вот ещё один
Code:
while UO.Count( reg ) == 3 
            wait(100)
         wend

тож самое с регом, как только 3 рега останется, скрипт виснет

Вот ещё один загадочный кусок
Code:
if UO.Count( lesepoison ) > 10 then 
         uo.useobject('0x400B14EC')
         UO.WaitTargetType( lesepoison )
         wait( 500 )
         while UO.Count( lesepoison ) > 10
            wait(100)
         wend
         wait(100)
      endif


тут, значится, если пойзонок станет больше 10, использовать какой-то предмет, прицелится в пойзонку, полсекунды подождать, если пойзонок больше 10, опять повиснуть в непонятном ожидании

Author:  GAUHAR [ 2009-02-26 23:26:11 ]
Post subject: 

Честное слово экспериментов провел тьму, но
Code:
UO.OnGump()

мне не удалось укратить, только клики (но это же не наш стиль, хотя меня это вполне удовлетворило).

Author:  kama26 [ 2009-02-27 15:47:27 ]
Post subject: 

Millerbeer wrote:

Вот ещё один загадочный кусок
Code:
if UO.Count( lesepoison ) > 10 then 
         uo.useobject('0x400B14EC')
         UO.WaitTargetType( lesepoison )
         wait( 500 )
         while UO.Count( lesepoison ) > 10
            wait(100)
         wend
         wait(100)
      endif


тут, значится, если пойзонок станет больше 10, использовать какой-то предмет, прицелится в пойзонку, полсекунды подождать, если пойзонок больше 10, опять повиснуть в непонятном ожидании




ну ето всмысле как тока бутылок с пойсоном становится 10 штук он их переливает в кегу )))

Author:  kama26 [ 2009-02-27 15:50:35 ]
Post subject: 

GAUHAR wrote:
Честное слово экспериментов провел тьму, но
Code:
UO.OnGump()

мне не удалось укратить, только клики (но это же не наш стиль, хотя меня это вполне удовлетворило).


что бы своять то что своял ,а прежде всего понять как ето делается (потому не учился я на програмирование)убил наверное часов 20 )))

Author:  kama26 [ 2009-02-27 23:39:03 ]
Post subject: 

проблема актуальна до сих пор ((((
то что сказали исправил правда ошибку до сих пор вышибаеть (((

Author:  kama26 [ 2009-02-28 00:42:09 ]
Post subject: 

Code:
sub main()
   VAR Sunduk = "0x400E0DD2"
   VAR bytil = "0x0F0E"
   VAR reg = "0x0F88"
   VAR pestik = "0x0E9B"
   VAR lesepoison = "0x0F0A"
   VAR k
 
     UO.Set('norbcalc',1)
     UO.Set('norbcheck',1)
     
 
   While TRUE
      If UO.Count( reg ) < 0 Then
         UO.FindType( reg, '-1', Sunduk )
         If UO.FindCount() == 0 Then
            UO.Print("Больше ресов нет!!!!")
             uo.exec('terminate all')
        uo.print ("все скрипты завершены")
            return
         Endif
         UO.Grab( '300', 'finditem' )
         wait(500)
       
      Endif
   
      UO.DeleteJournal()
     
      wait(100)
      UO.UseType( pestik )
      UO.OnGump('0x0004f288','0x0000003a','17')
      UO.Recall('0x0000003b','802')
     
      k = 0
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 70)
 
         k = k + 1
         wait(300)
      wend
      if UO.Count( lesepoison ) > 10 then
         uo.useobject('0x400B14EC')
         UO.WaitTargetType( lesepoison )
         wait( 500 )

      endif
   Wend
  wait(100)
end sub



вот что после исправлений (вернее удалений) получилось ,но как я и говорил скрипт вылетает через те же самые 5-20 минуток (((

Author:  Millerbeer [ 2009-02-28 18:34:58 ]
Post subject: 

Я так подозреваю, вылетает после World Save? А через waitmenu крафт не сделать?

Author:  kama26 [ 2009-02-28 18:54:24 ]
Post subject: 

Millerbeer wrote:
Я так подозреваю, вылетает после World Save? А через waitmenu крафт не сделать?



нет ((( тока так либо через клики

Author:  Millerbeer [ 2009-02-28 20:34:51 ]
Post subject: 

Code:
sub main() 
   VAR Sunduk = "0x400E0DD2"
   VAR bytil = "0x0F0E"
   VAR reg = "0x0F88"
   VAR pestik = "0x0E9B"
   VAR lesepoison = "0x0F0A"
 
     UO.Set('norbcalc',1)
     UO.Set('norbcheck',1)
     
   While TRUE
      If  not UO.Count( reg ) Then
         UO.FindType( reg, '-1', Sunduk )
         If not UO.FindCount() Then
             UO.Print("Больше ресов нет!!!!")
             uo.exec('terminate all')
             uo.print ("все скрипты завершены")
             return
         Endif
         UO.Grab( '300', 'finditem' )
         wait(1000)
         checklag()
      Endif
   
      UO.DeleteJournal()
     
      wait(100)
      UO.UseType( pestik )
      UO.OnGump('0x0004f288','0x0000003a','17')
      UO.Recall('0x0000003b','802')
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail')
         wait(300)
      wend
      if UO.Count( lesepoison ) > 10 then
          UO.WaitTargetType( lesepoison )
          uo.useobject('0x400B14EC')
          wait( 1000 )
          checklag()
      endif
   Wend
  wait(100)
end sub
Sub Checklag()
   deljournal('a backpack')
   uo.click('backpack')
   repeat
      wait(50)
   until uo.injournal('a backpack')
endsub
Sub deljournal(msg)
   while uo.injournal(msg)
      uo.setjournalline(uo.injournal(msg)-1,"")
   wend
endsub


Ну так попробуй, мож не будет вылетать

Author:  kama26 [ 2009-03-01 00:36:33 ]
Post subject: 

Quote:
Ну так попробуй, мож не будет вылетать


всё равно вылетает чтоб ему пусто было (((

Author:  kama26 [ 2009-04-08 15:10:07 ]
Post subject: 

народ у мя подозрения что вылетает когда по какой то причине действие (т.е. нажатие на кнопочки в гампе ) не завершено а подвисает ((
можно ли сделать какую нить проверочку на время если текста нет то он юзает пестик а потом появившийся гамп просто правым кликом убирает ????

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/