помогите нубу плз с правкой скрипта

Ask for scripts here

Moderators: Murderator+, Murderator

Post Reply
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

помогите нубу плз с правкой скрипта

Post by klim_killer »

Всем привет! я базовые вещи инжекта знаю, но вот как он работает с файлами, первый раз столкнулся.
Я пытался сделать из скрипта Ветерана на ламбер, свой скрипт на фишинг. Скрипт очень простой: есть массив координат, записанный в файл, надо просто подгрузить его, и на каждом тыкать удочкой 1 раз. Я измыслил следующее:

Code: Select all

var f=file("C:\water.dat")
sub Lumberjacking()
   var i=0,j=0,k=0,r=0,q=0,ii,jj
   var TopX=324,TopY=65
   dim TreeX[5000], TreeY[5000],TreeT[5000]
   var flag=0,treeCount=0,
   uo.Print('Çàãðóæàåì êîîðäèíàòû èç ôàéëà...')
   f.open()
   treeCount=safe call f.ReadNumber()
   for i=1 to treeCount
      TreeT[i]=safe call f.ReadNumber()
      TreeX[i]=safe call f.ReadNumber()
      TreeY[i]=safe call f.ReadNumber()
   next
   f.close()
   while 1==1
      if treeCount>0 then
         for i=1 to treeCount
            if flag==1 then
               GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),str(uo.GetZ()))
            end if
         next
      end if
   wend
end sub
Sub GetTree(Type,X,Y,Z)
   var i
   uo.DeleteJournal()
   uo.WaitTargetTile(Type,X,Y,Z)
   uo.Usetype('0x0DBF')
   repeat
      wait(100)
   until UO.InJournal("stop fishing.") or UO.InJournal("can't") or UO.InJournal("waters") or UO.InJournal("far")
end sub


При попытке запустить виснет комп)))
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

Re: помогите нубу плз с правкой скрипта

Post by klim_killer »

Или возможно есть графика воды, т.к. я не смог убрать из скрипта ветерана проверку, дерево ли этот тайл(((
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: помогите нубу плз с правкой скрипта

Post by Juicy Fruit »

Code: Select all

   while 1==1
      if treeCount>0 then
         for i=1 to treeCount
            if flag==1 then
               GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),str(uo.GetZ()))
            end if
         next
      end if
   wend

Этот фрагмент замени на

Code: Select all

   while 1==1
      if treeCount>0 then
         for i=1 to treeCount
            GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),'-5')
         next
      end if
   wend

У тебя flag всегда равен нулю. Из-за этого и виснет. Z координата воды всегда -5, на сколько я знаю, если другую указать в вэйттаргеттайле, то на некоторых шардах чар может отказываться рыбачить.
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

Re: помогите нубу плз с правкой скрипта

Post by klim_killer »

спасибо огромное) все заработало)
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

Re: помогите нубу плз с правкой скрипта

Post by klim_killer »

Теперь стала появляться новая проблемма, вылезает unhandled exeption in parser((( именно на этом скрипте

Code: Select all

var f=file("C:\water.dat")
sub Lumberjacking()
   var i=0,j=0,k=0,r=0,q=0,ii,jj
   var TopX=324,TopY=65
   dim TreeX[5000], TreeY[5000],TreeT[5000]
   var treeCount=0
   f.open()
   treeCount=safe call f.ReadNumber()
   for i=1 to treeCount
      TreeT[i]=safe call f.ReadNumber()
      TreeX[i]=safe call f.ReadNumber()
      TreeY[i]=safe call f.ReadNumber()
   next
   f.close()
      while 1==1
      if treeCount>0 then
         for i=1 to treeCount
            GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),'-5')
         next
      end if
   wend
end sub
Sub GetTree(Type,X,Y,Z)
   var i
   uo.DeleteJournal()
   uo.WaitTargetTile(Type,X,Y,Z)
   uo.Usetype('0x0DBF')
   repeat
      wait(100)
   until UO.InJournal("stop fishing.") or UO.InJournal("can't") or UO.InJournal("waters") or UO.InJournal("far")
   Loot3()
end sub

sub Loot3()
   DIM fish[9]
   fish[0] = '0x0E75'      ; Back Pack
   fish[1] = '0x0DD6'      ; Bood Moss
   fish[2] = '0x0DD7'      ; Mandrake Root
   fish[3] = '0x0DD8'      ; garlic
   fish[4] = '0x09CE'      ; Ginseng
   fish[5] = '0x09CC'      ; Night Shade
   fish[6] = '0x0DD6'      ; Sulphorous Ash
   fish[7] = '0x09CD'      ; Spiders Silk
   fish[8] = '0x09CF'
   VAR t
   For t = 0 To 8
   uo.Set('finddistance','0')
   uo.Ignore('self')
   uo.FindType('fish[i]','-1','ground')
   while uo.FindCount() && uo.Weight <= 60000
      uo.findtype('fish[i]','0xffff','ground')
      uo.moveitem('finditem','0','backpack')
      wait(200)
   wend
   uo.IgnoreReset()
endsub


не смотря на то, что в сабе лут 3 ошибка, и он поднимает абсолютно все, до этого вроде стабильно работал...
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: помогите нубу плз с правкой скрипта

Post by Juicy Fruit »

Code: Select all

sub Loot3()
   DIM fish[9]
   fish[0] = '0x0E75'      ; Back Pack
   fish[1] = '0x0DD6'      ; Bood Moss
   fish[2] = '0x0DD7'      ; Mandrake Root
   fish[3] = '0x0DD8'      ; garlic
   fish[4] = '0x09CE'      ; Ginseng
   fish[5] = '0x09CC'      ; Night Shade
   fish[6] = '0x0DD6'      ; Sulphorous Ash
   fish[7] = '0x09CD'      ; Spiders Silk
   fish[8] = '0x09CF'
   VAR t
   uo.Set('finddistance','0')
   uo.Ignore('self')
   For t = 0 To 8
      uo.FindType(fish[i],'-1','ground')
      while uo.FindCount() && uo.Weight <= 60000 #Чо за дикий вес? о_О
         uo.findtype(fish[i],'-1','ground')
         uo.moveitem('finditem','0','backpack')
         wait(200)
      wend
   next
   uo.IgnoreReset()
end sub


for не был закрыт некстом, переменные массива надо писать без ковычек (fish[i])
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

Re: помогите нубу плз с правкой скрипта

Post by klim_killer »

спасибо, буду тестить) максимальный вес (в бэкпаке) допустимый на шарде)))) плюс к этому 4 руды весят 1 веса, 2 куска рыбы весят 1 веса)
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: помогите нубу плз с правкой скрипта

Post by Mirage »

while uo.FindCount() && uo.Weight <= 60000 #Чо за дикий вес? о_О

Он имел ввиду что независимо от того, весит ли рыба 0,0001 стоун или 100 стоунов чар будет набирать рыбу до тех пор пока вес БЭКПАКА не будет 60000 стоунов. При том что на сфере при силе 150 чар может поднять только 560 или 640 стоунов.
Символ && это AND.
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: помогите нубу плз с правкой скрипта

Post by Juicy Fruit »

klim_killer wrote:спасибо, буду тестить) максимальный вес (в бэкпаке) допустимый на шарде)))) плюс к этому 4 руды весят 1 веса, 2 куска рыбы весят 1 веса)

Адский шард))
klim_killer
Posts: 20
Joined: 2006-03-27 00:03:20

Re: помогите нубу плз с правкой скрипта

Post by klim_killer »

максимальный вес бэкпака не зависит от силы, и составляет 60000 стоунов. От силы зависит, сколько ты можешь носить веса без потери стамины
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: помогите нубу плз с правкой скрипта

Post by Mirage »

Шестьдесят ТЫСЯЧ?!? :shock:
*тут был звук падающего в обморок тела*
Post Reply