Page 1 of 1

Line 101 parse error

Posted: 2006-03-19 17:20:03
by Ivan Pomidorov
Написал скрипт на разгадку и раскладку карт , а он все делает только под конец вылетает вот так Line 69 parse error :( Кроме того не совсем понятно почему без вот этого

Code: Select all

      Wait(800)
      UO.Click("finditem")
он не работате  :(  хотя по смыслу должен  :D

sub RazgadkaKart()
Var WaitTime=700

UO.Print('Vibery meshok s kartamy!')
   UO.AddObject('SourceBag')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('SourceBag')

UO.Print('Dla 1 urovna')
   UO.AddObject('Bag1')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag1')

UO.Print('Dla 2 urovna')
   UO.AddObject('Bag2')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag2')

UO.Print('Dla 3 urovna')
   UO.AddObject('Bag3')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag3')

UO.Print('Dla 4 urovna')
   UO.AddObject('Bag4')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag4')

UO.Print('Dla 5 urovna')
   UO.AddObject('Bag5')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag5')

repeat
UO.FindType('0x14EB',-1,'SourceBag')
      If UO.GetQuantity('finditem')>0 Then
         UO.DeleteJournal()
         UO.MoveItem('finditem','1','backpack')
         wait(WaitTime)
         UO.UseObject('finditem')

UO.DeleteJournal()
      Wait(800)
      UO.Click("finditem")


if uo.injournal("level 1") then
      uo.moveitem('finditem',0,'Bag1')
      wait(WaitTime)
      endif
if uo.injournal("level 2") then
      uo.moveitem('finditem',0,'Bag2')
      wait(WaitTime)
      endif
if uo.injournal("level 3") then
      uo.moveitem('finditem',0,'Bag3')
      wait(WaitTime)
      endif
if uo.injournal("level 4") then
      uo.moveitem('finditem',0,'Bag4')
      wait(WaitTime)
      endif
if uo.injournal("level 5") then
      uo.moveitem('finditem',0,'Bag5')
      wait(WaitTime)
      endif
 
UO.DeleteJournal()
until UO.FindCount()==0

end sub

Posted: 2006-03-19 17:29:08
by Scripts Writer
потому что этой строкой инж кликает на найденую карту, тем самым клиент выводит на экран параметр: " Эта карта такого то уровня ", который потом считывается инжектом для дальнейшей раскладки по мешкам.

Posted: 2006-03-19 17:32:08
by Ivan Pomidorov
Это я понял , но ведь при разгадке карты в журнале остается похожее сообщение где есть тоже level 1 и т.п. ,а условие на перекладывание не срабатывает :(

Posted: 2006-03-19 18:55:46
by Scripts Writer
у тя журнал делитится прежде чем ты кликаешь-получается что ты свежим журналом тестишь ) и полученую карту кладешь как и должно быть!

Posted: 2006-03-19 19:06:28
by Ivan Pomidorov
Ок огромное спасибо , вот бы еще узнать почему он слетает ) с ошибкой , точнее пишет line 101 : parce error ? Вылетает на оконцовке , т.е. когда карт на разгадку 0 , а должен заканчиватся .
P.S. Это первый мой скрипт ( почти мой :D фрагменты повыдирал некоторые )

Posted: 2006-03-19 19:48:53
by Scripts Writer
ну хз. если он слетает тогда, когда всё зделает-тогда ок, а если посередине -хм.

Code: Select all

until UO.FindCount()==0 
в цикле наверняка трабла


но возможно и тут:

Code: Select all

UO.FindType('0x14EB',-1,'SourceBag') 
If UO.GetQuantity('finditem')>0 Then
UO.DeleteJournal()
UO.MoveItem('finditem','1','backpack')
wait(WaitTime)
UO.UseObject('finditem')


хм :) а

Code: Select all

end if 
куда делся ). ВОт он и парсит.
Вот , вроде правильно пихнул )) попробуй так:



Code: Select all

sub RazgadkaKart() 
  Var WaitTime=700

    UO.Print('Vibery meshok s kartamy!')
    UO.AddObject('SourceBag')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('SourceBag')
    UO.Print('Dla 1 urovna')
    UO.AddObject('Bag1')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('Bag1')
    UO.Print('Dla 2 urovna')
    UO.AddObject('Bag2')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('Bag2')
    UO.Print('Dla 3 urovna')
    UO.AddObject('Bag3')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('Bag3')
    UO.Print('Dla 4 urovna')
    UO.AddObject('Bag4')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('Bag4')
    UO.Print('Dla 5 urovna')
    UO.AddObject('Bag5')
    While UO.Targeting()==2
        wait(500)
    Wend
    UO.UseObject('Bag5')
    repeat
        UO.FindType('0x14EB',-1,'SourceBag')
        If UO.GetQuantity('finditem')>0 Then
            UO.DeleteJournal()
            UO.MoveItem('finditem','1','backpack')
            wait(WaitTime)
            UO.UseObject('finditem')
        end if
        UO.DeleteJournal()
        Wait(800)
        UO.Click("finditem")
        if uo.injournal("level 1") then
            uo.moveitem('finditem',0,'Bag1')
            wait(WaitTime)
        endif
        if uo.injournal("level 2") then
            uo.moveitem('finditem',0,'Bag2')
            wait(WaitTime)
        endif
        if uo.injournal("level 3") then
            uo.moveitem('finditem',0,'Bag3')
            wait(WaitTime)
        endif
        if uo.injournal("level 4") then
            uo.moveitem('finditem',0,'Bag4')
            wait(WaitTime)
        endif
        if uo.injournal("level 5") then
            uo.moveitem('finditem',0,'Bag5')
            wait(WaitTime)
        endif
        UO.DeleteJournal()
    until UO.FindCount()==0
end sub

Posted: 2006-03-19 21:06:15
by Ivan Pomidorov
Спасибо , дело было действительно в этом : я добавил checklag , изменил паузу , щас работает отлично :D
Вот конечный вариант :

Code: Select all

sub RazgadkaKart()

UO.Print('Vibery meshok s kartamy!')
   UO.AddObject('SourceBag')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('SourceBag')

UO.Print('Dla 1 urovna')
   UO.AddObject('Bag1')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag1')

UO.Print('Dla 2 urovna')
   UO.AddObject('Bag2')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag2')

UO.Print('Dla 3 urovna')
   UO.AddObject('Bag3')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag3')

UO.Print('Dla 4 urovna')
   UO.AddObject('Bag4')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag4')

UO.Print('Dla 5 urovna')
   UO.AddObject('Bag5')
   While UO.Targeting()==2
      wait(500)
   Wend
   UO.UseObject('Bag5')

repeat
UO.FindType('0x14EB',-1,'SourceBag')
      If UO.GetQuantity('finditem')>0 Then
         UO.DeleteJournal()
         UO.MoveItem('finditem','1','backpack')
         wait(1000)
         UO.UseObject('finditem')
      end if

UO.DeleteJournal()
      CheckLag()
      UO.Click("finditem")


if uo.injournal("level 1") then
      uo.moveitem('finditem',0,'Bag1')
      CheckLag()
      endif
if uo.injournal("level 2") then
      uo.moveitem('finditem',0,'Bag2')
      CheckLag()
      endif
if uo.injournal("level 3") then
      uo.moveitem('finditem',0,'Bag3')
      CheckLag()
      endif
if uo.injournal("level 4") then
      uo.moveitem('finditem',0,'Bag4')
      CheckLag()
      endif
if uo.injournal("level 5") then
      uo.moveitem('finditem',0,'Bag5')
      CheckLag()
      endif
 
UO.DeleteJournal()
until UO.FindCount()==0

end sub

sub CheckLag()
    UO.DeleteJournal()
    UO.Click('backpack')
    repeat
    Wait(300)
    Until uo.InJournal('backpack')
end sub

Posted: 2006-03-19 21:10:09
by Scripts Writer
заключай в код епт

Posted: 2006-03-19 21:51:24
by Ivan Pomidorov
You Must Die wrote:заключай в код епт


:D

Posted: 2006-03-20 10:04:38
by Destruction

Posted: 2006-03-20 12:59:55
by Ivan Pomidorov
Destruction wrote:ПРАВИЛА

Виноват сразу не врубился :( Кстати , а где ( в каком разделе ) надо публиковать скрипты , чтоб их критиковали :D ?

Posted: 2006-03-20 20:27:19
by Destruction
Раздел Scripts - всё туда.

ЗЫ: Прикольно получилось -)

Posted: 2006-03-21 12:56:46
by SLAK
Destruction wrote:ЗЫ: Прикольно получилось -)

Флудер йопт.