Plz help

Ask for help

Moderators: Murderator+, Murderator

Post Reply
scremer
Posts: 7
Joined: 2007-06-06 00:23:14

Plz help

Post by scremer »

Если никто не возражает, начну свой топик надеюсь мне тут будут отвечать,я только начал учиться писать скрипты прочел уроки как пологаеться и тд, но запнулся на самом элементарном скрипте... хотел прокачать кампинг, для этого брать 1 хворост и кидать на землю, а потом его поджигать но чет скрипт меня посылает, говоря что на земле он ничего не находит, а сам хворост кидает...
скриптик взял изночально на кукинг с этого шарда

Code: Select all

 
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



ОГРОМНОЕ спасибо тем кто откликниться
Last edited by scremer on 2007-06-06 00:49:12, edited 1 time in total.
scremer
Posts: 7
Joined: 2007-06-06 00:23:14

Post by scremer »

сори за безграмотность, клавиши на клавиатуре не всегда нажимаються
to4a
Posts: 265
Joined: 2006-03-10 00:19:11
Location: http://drw.ru/

Post by to4a »

не uo.usetype(Kindling) а uo.usefromground(Kindling)
DRW - Glorior Belli
Image
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Code: Select all

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

В условии ты ищеш хворост сравнивая значение с нулем. Соответственно если вернулся 0

Code: Select all

RETURN 0
то скрипт офф. А если хворост есть, то вернет 1 и скрипт продолжится.
Шард Антарес
Ururu
scremer
Posts: 7
Joined: 2007-06-06 00:23:14

Post by scremer »

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

да я и так делал)))) но нечего не помогло, нот фаунд пишет, клиент хз какой.. помойму для инжекта качал 1.2.6.4б или как то так ... шард на сфере v0.51a .. не знаю важно ли это. Странно что в скрипте на кукинг он этот хворост разжигает...
вот тот скрипт:

Code: Select all

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 спасиб огромное)) пояснил)) полезная инфо)))) у когонить из вас есть аськи ?? помучить вопросами
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Попробуй заменить

Code: Select all

UO.UseType(Kindling)

на

Code: Select all

UO.UseObject('finditem')
Шард Антарес
Ururu
Rivory
Posts: 205
Joined: 2005-01-06 11:49:28

Post by Rivory »

в самое начало скрипта ещё допиши

Code: Select all

uo.set('finddistance','3')
scremer
Posts: 7
Joined: 2007-06-06 00:23:14

Post by scremer »

спасибо помогло
Last edited by scremer on 2007-06-07 18:42:32, edited 1 time in total.
scremer
Posts: 7
Joined: 2007-06-06 00:23:14

Post by scremer »

Ururu Спасибо!!!

Code: Select all

c  UO.UseType(Kindling)    на  UO.UseObject('finditem') 

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

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

или есть более правильные способы зацеклить скрипт, в данный момент я просто назначил на кнопку(f2) скрипт и в пилоте
send f2
wait 1000
Rivory
Posts: 205
Joined: 2005-01-06 11:49:28

Post by Rivory »

Первый способ

Code: Select all

while ....
...
.
.
.
...
wend


Второй способ

Code: Select all

repeat
...
...
...
...
until условие

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