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

Скрипт на сбор растений
http://forum.yoko.com.ua/viewtopic.php?f=17&t=13796
Page 1 of 1

Author:  vorm [ 2008-07-17 10:07:16 ]
Post subject:  Скрипт на сбор растений

Положение: есть поле, поле больше, ручки сразу до всего не дотягиваються, тянуться только на 4 клетки!

дальше два варианта:

Code:
sub main() 
uo.set('finddistance','4')
repeat
UO.Findtype('0x1A99','-1','ground')
uo.usefromground(0x1A99)
wait(400)
until false
endsub


Все хорошо, но
Code:
uo.set('finddistance','4') 

Похоже не дает условие для
uo.usefromground('type')

Как поступить?

Вариант дЫва:

Образ перебора тайлов:
Code:
Sub main()
VAR x, y, t, k

for y=-2 to 2
   for x=-2 to 2
      k = 0
      repeat
         UO.DeleteJournal()
         t = UO.Timer()
         k = k + 1
         UO.CancelTarget()
         wait(300)
         UO.WaitTargetTile( TileNum, STR( UO.GetX() + x ), STR( UO.GetY() + y ), 0)
   UO.UseType('type'); если так или uo.usefromgroud('T') всеравно пытаеться дотянуться до недоступных тайлов
         repeat
            wait(300)
         until false
endsub


Возможноли просто обусловить Дабл клик по тайлу.

Заранее огромное спасибо за внимание!

Author:  Scripts Writer [ 2008-07-17 10:25:22 ]
Post subject: 

Если у растения есть тип, то

Code:
sub Get_Herb()
  var type=
 
  uo.Set('finddistance','4')
  while not uo.Dead()
    uo.FindType(type,'-1','ground')
    if uo.FindCount() then
      uo.UseObject('finditem')
      wait(350)
    else
      wait(100)
    end if
  wend
end sub     
   

Author:  vorm [ 2008-07-17 10:56:42 ]
Post subject: 

Да, в теории здорво... но он почему то всеравно хочед дотянуться до недоступных тайлов =(

Author:  Destruction [ 2008-07-17 11:59:10 ]
Post subject: 

uo.Set('finddistance','0') тада )

Author:  vorm [ 2008-07-17 15:18:18 ]
Post subject: 

Это неприемлимо раз, и два, разницы мало!

Как сделать что бы он "атачил тайл"? просто дабл клик на заданый тайл

Author:  Purgen [ 2008-07-17 15:42:35 ]
Post subject: 

Есть вот такая штука http://yoko.com.ua/help/help.php?lang=r ... targettile , но сомневаюсь, что прокатит.

А вобще-то Скриптс Врайтер показал правильный скрипт, поиграйся с дистанцией, попробуй выставить 2, 3, 5..

Author:  vorm [ 2008-07-17 16:35:29 ]
Post subject: 

ну я пробывал по всякому её менять... ноль эмоций, всеравно думает, что у него руки резиновые!

Code:
uo.waittargettile(lasttile/tilenum,[x],[y],[z])


Здорво, но он просто устанавливает ловушку... а далее следующий "Use'type'" пытаеться удленнить руки!

Author:  Scripts Writer [ 2008-07-17 17:02:39 ]
Post subject: 

Игнорируй

Author:  vorm [ 2008-07-17 17:18:07 ]
Post subject: 

Ага, вот это уже интересней, а как игнорировать все что выходит за дистанцию определенную? Конкретно кусок кода, пожалуйста, если можно!

Author:  Purgen [ 2008-07-17 17:21:58 ]
Post subject: 

uo.Set('finddistance','4') ;)
Всё, что дальше - игнорируеться.

Author:  Scripts Writer [ 2008-07-17 17:42:22 ]
Post subject: 

Code:
uo.Ignore('finditem')

Author:  vorm [ 2008-07-17 20:37:32 ]
Post subject: 

Purgen wrote:
uo.Set('finddistance','4') ;)
Всё, что дальше - игнорируеться.


Должна игнорироваться! Но не игнорируеться!

Scripts Writer wrote:
Code:
uo.Ignore('finditem')


Эт я знал... но конкретно допустим к следующему коду как привязать?

ЗЫ. вот родил код... но что то он даже не пытаеться потыкать в цвяточки:

Code:
sub main()
uo.set('finddistance','4')
var xlop='0x1A9B'
var xlop2='0x1A9C'
var cnt
uo.findtype(xlop,-1,'ground')
cnt=uo.findcount()
while cnt>0
uo.findtype(xlop,-1,'ground')
cnt=uo.findcount()
uo.useobject('Finditem')
wait(400)
uo.findtype(xlop2,-1,'ground')
if uo.findcount() then
uo.grab(0,'finditem')
wait(666)
endif
wend
end sub

Author:  Kynep [ 2008-07-17 21:36:17 ]
Post subject: 

Попробуй увеличить задержку.

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