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

Plz help
http://forum.yoko.com.ua/viewtopic.php?f=3&t=12043
Page 1 of 1

Author:  scremer [ 2007-06-06 00:44:33 ]
Post subject:  Plz help

Если никто не возражает, начну свой топик надеюсь мне тут будут отвечать,я только начал учиться писать скрипты прочел уроки как пологаеться и тд, но запнулся на самом элементарном скрипте... хотел прокачать кампинг, для этого брать 1 хворост и кидать на землю, а потом его поджигать но чет скрипт меня посылает, говоря что на земле он ничего не находит, а сам хворост кидает...
скриптик взял изночально на кукинг с этого шарда
Code:
 
sub GetFire()
   var Kindling  = '0x0de1'
                var sumka = id сумки
   lasttimer = uo.timer()  # это вообще нужно??
   repeat
      uo.findtype(Kindling,"-1","sumka") #Ищем хворост в сумке
      wait(100)
   until uo.findcount() > 0 or uo.timer()>lasttimer+500
   if uo.findcount() == 0 then
      uo.print('нет хвороста')
      RETURN 0                   # поясните что эта команда делает??????? в уроках про нее не слова, я так понял она кудата скрипт возврщает или чтото запускает, да????
   endif
   UO.Drop('1',0,0,0,'finditem') #кидаем хворост под ноги
   #до этого моменда все работает тоесть он кинул хворост, а потом я делаю каманду использовать .. а он говорит нот фаунд
   uo.usetype(Kindling)
# пробовал другую команду там чето с граундом.. писал в ручную дграунд уюз итем а он не в какую не зажигает .... что мне дописать??? может финд тайп(или итем.. как там правельно ) добавить или как???? я так понимаю что можно просто кардинаты попробовать укозать упавшего швороста. но чере юз итем помойму более грамотно.. инжект последней версии
   endsub



ОГРОМНОЕ спасибо тем кто откликниться

Author:  scremer [ 2007-06-06 00:46:31 ]
Post subject: 

сори за безграмотность, клавиши на клавиатуре не всегда нажимаються

Author:  to4a [ 2007-06-06 02:06:05 ]
Post subject: 

не uo.usetype(Kindling) а uo.usefromground(Kindling)

Author:  Ururu [ 2007-06-06 02:32:53 ]
Post subject: 

Code:
RETURN 0                   # поясните что эта команда делает??????? в уроках про нее не слова, я так понял она кудата скрипт возврщает или чтото запускает, да????

В условии ты ищеш хворост сравнивая значение с нулем. Соответственно если вернулся 0
Code:
RETURN 0
то скрипт офф. А если хворост есть, то вернет 1 и скрипт продолжится.

Author:  scremer [ 2007-06-06 10:59:07 ]
Post subject: 

to4a wrote:
не uo.usetype(Kindling) а uo.usefromground(Kindling)

да я и так делал)))) но нечего не помогло, нот фаунд пишет, клиент хз какой.. помойму для инжекта качал 1.2.6.4б или как то так ... шард на сфере v0.51a .. не знаю важно ли это. Странно что в скрипте на кукинг он этот хворост разжигает...
вот тот скрипт:
Code:
sub GetFire()
   var Kindling  = '0x0de1'
   var Campfire  = '0x0de3'
   var Embers    = '0x0de9'
   var lasttimer
   var Fire      = 0 #Стадии огня 0 - нет, 1 - огонь, 2 - угли
   
   lasttimer = uo.timer()
   repeat
      uo.findtype(Kindling,"-1","backpack") #Ищем хворост в бакпаке
      wait(100)
   until uo.findcount() > 0 or uo.timer()>lasttimer+500
   if uo.findcount() == 0 then
      uo.print('нет хвороста')
      RETURN 0
   endif
   UO.Drop('1',0,0,0,'finditem') #кидаем хворост под ноги
   
   uo.usetype(Kindling)
   while not Fire
      uo.usetype(Kindling)
      Fire = 0
      uo.print('пытаемся поджечь')
      uo.findtype(Campfire,"-1","ground")
      if uo.findcount() > 0 then
         uo.print('огонь нашли')
         Fire = 1
         wait(500)
      else
         uo.findtype(Embers,"-1","ground")
         if uo.findcount() > 0 then
            uo.print('угли нашли')
            Fire = 2
            wait(500)
         endif
      endif
      wait(500)
   wend
   RETURN 1
endsub

sub CookFish()
var RawFish   = '0x097a'
var FihSteak  = '0x097b'
var Campfire  = '0x0de3'
var Embers    = '0x0de9'
var out       = 0 #Флаг выхода из
var Fire      = 0 #Стадии огня 0 - нет, 1 - огонь, 2 - угли
var lasttimer


repeat
   out       = 0
   uo.findtype(RawFish,"-1","backpack")
   if uo.findcount() == 0 then
      uo.print("кончилась рыба")
      out = 1
   endif
   Fire = 0
   uo.usetype(RawFish)
   uo.findtype(Campfire,"-1","ground")
   if uo.findcount() > 0 then
      uo.waittargetobject("finditem")
      Fire = 1
      wait(1000)
   else
      uo.findtype(Embers,"-1","ground")
      if uo.findcount() > 0 then
         uo.waittargetobject("finditem")
         Fire = 2
         wait(1000)
      endif
   endif
   wait(1000)
   if Fire == 0 then
      if GetFire() == 0 then
         out = 1
      endif
   endif

until out

endsub


тут в инже запускаеться кук фиш, а я взял ток первую его часть как выше писал и сделал чтоб хворост брал из сумки что рядом лежит
и то до строчки uo.usetype(Kindling) как уже говорил пробовал разные каманды...

Ururu спасиб огромное)) пояснил)) полезная инфо)))) у когонить из вас есть аськи ?? помучить вопросами

Author:  Ururu [ 2007-06-06 11:18:17 ]
Post subject: 

Попробуй заменить
Code:
UO.UseType(Kindling)

на
Code:
UO.UseObject('finditem')

Author:  Rivory [ 2007-06-06 19:26:11 ]
Post subject: 

в самое начало скрипта ещё допиши
Code:
uo.set('finddistance','3')

Author:  scremer [ 2007-06-07 18:38:56 ]
Post subject: 

спасибо помогло

Author:  scremer [ 2007-06-07 18:41:00 ]
Post subject: 

Ururu Спасибо!!!
Code:
c  UO.UseType(Kindling)    на  UO.UseObject('finditem') 

поменял - помогло)))
финд дистанс роли не сыграло. ))) теперь вопрос такой, как по кругу пустить скрипт, можно ли это сделать допустим циклом виле-венд....??
например:

var cikli = 6
while cikli == 6
.....
.....
.....
.....
wend

или есть более правильные способы зацеклить скрипт, в данный момент я просто назначил на кнопку(f2) скрипт и в пилоте
send f2
wait 1000

Author:  Rivory [ 2007-06-12 20:23:28 ]
Post subject: 

Первый способ
Code:
while ....
...
.
.
.
...
wend


Второй способ
Code:
repeat
...
...
...
...
until условие

Когда условие выполниться, инжа выйдет из цикла.

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