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

Агилити на коня
http://forum.yoko.com.ua/viewtopic.php?f=3&t=16111
Page 1 of 1

Author:  TEHb o2 [ 2011-01-16 17:37:30 ]
Post subject:  Агилити на коня

Господа имеется собвстенно вот такой макрос
sub Unic()
var Horse='0x001DCBD8'
If NOT UO.ObjAtLayer('Horse') Then
uo.UseObject(Horse)
else
uo.useobject('self')
uo.WaitTargetObject('laststatus')
uo.Msg('All Kill')

Endif

Не подскажете как сделать так чтобы помимо всего прочего он кидал агилку на лошадь?
если не сложно сделайте пожалуйста. А лучше чтобы слез кинул, сел)
спасибо заранее!

Author:  Blood Slayer [ 2011-01-16 17:42:43 ]
Post subject:  Re: Агилити на коня

TEHb o2 wrote:
Господа имеется собвстенно вот такой макрос
sub Unic()
var Horse='0x001DCBD8'
If NOT UO.ObjAtLayer('Horse') Then
uo.UseObject(Horse)
else
uo.useobject('self')
uo.WaitTargetObject('laststatus')
uo.Msg('All Kill')

Endif

Не подскажете как сделать так чтобы помимо всего прочего он кидал агилку на лошадь?
если не сложно сделайте пожалуйста. А лучше чтобы слез кинул, сел)
спасибо заранее!


А если так
Code:
sub Unic()
var Horse='0x001DCBD8'
          If NOT UO.ObjAtLayer('Horse') Then 
             uo.UseObject(Horse)
          else
             uo.useobject('self') 
                 wait(100)
             Uo.WaitTargetObject( Horse )
             Uo.Cast('Agility')
                 wait(100)
             uo.WaitTargetObject('laststatus')
             uo.Msg('All Kill') 
Endif 

Author:  TEHb o2 [ 2011-01-16 18:53:14 ]
Post subject:  Re: Агилити на коня

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

Author:  Blood Slayer [ 2011-01-16 20:32:46 ]
Post subject:  Re: Агилити на коня

TEHb o2 wrote:
неее каст не пойдет никак, каст я и сам бы попробовал сделать а тут просто не очень знаю как делать..... во время драки еще на коня каставать агилити это не так удобно как слез кинул сел)

Тогда обьясни конкректно, что и как надо сделать.

Author:  Mirage [ 2011-01-16 21:43:18 ]
Post subject:  Re: Агилити на коня

Так?
Code:
sub Unic()
var Horse='0x001DCBD8'
          If NOT UO.ObjAtLayer('Horse') Then
             uo.UseObject(Horse)
          else
             uo.useobject('self')
                 wait(100)
             uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")
                 wait(100)
             uo.UseObject(Horse)
          Endif
endsub 

Author:  TEHb o2 [ 2011-01-16 23:11:42 ]
Post subject:  Re: Агилити на коня

Даа Спасибо большое) только там косяк был я помучался и в итоге в мунитеме вместо хорс айди поставил и все пашет теперь)) спасибо)

Author:  Makarov [ 2011-01-17 05:31:46 ]
Post subject:  Re: Агилити на коня

Mirage wrote:
Так?
Code:
             uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")
                 wait(100)
             uo.UseObject(Horse)
 

Мираж, плз растолкуй этот кусок мне построчно.

Author:  Fistashka [ 2011-01-17 07:02:44 ]
Post subject:  Re: Агилити на коня

Makarov wrote:
Mirage wrote:
Так?
Code:
             uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")
                 wait(100)
             uo.UseObject(Horse)
 

Мираж, плз растолкуй этот кусок мне построчно.

Code:
uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")

эта команда перекидывает банку агилити на лошадь 0x0F09 тип банки Horse это id лошади
Code:
                 
wait(100)
uo.UseObject(Horse)

этот кусочек после того как кинул на лошадь банку садится на неё

Author:  Mirage [ 2011-01-17 08:51:51 ]
Post subject:  Re: Агилити на коня

uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")
эта команда перекидывает moveitem из пака ^ тип банки агилити0x0F09 на ID лошадь Horse,
вот так точнее :roll:

TEHb o2 wrote:
Даа Спасибо большое) только там косяк был я помучался и в итоге в мунитеме вместо хорс айди поставил и все пашет теперь)) спасибо)


надо было вверху без ' ' попробовать ID лошади указать. Но если работает то и фиг с ним :)

Author:  Makarov [ 2011-01-17 15:38:24 ]
Post subject:  Re: Агилити на коня

Mirage wrote:
uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")[/code]
эта команда перекидывает moveitem из пака ^ тип банки агилити0x0F09 на ID лошадь Horse,
вот так точнее :roll:

Скажи где ты взял этот синтаксис (вот это: ^), блин в справке я такого не видел, это полностью аналогично uo.moveitem(object,[quantity,containerobject/ground,[x,y,z]]) ?

Fistashka wrote:
Code:
uo.UseObject(Horse)

этот кусочек после того как кинул на лошадь банку садится на неё

Тогда перед ней нужно поставить uo.WarMode(0) чтобы лошадь случайно не атаковать.

Author:  Mirage [ 2011-01-17 16:01:51 ]
Post subject:  Re: Агилити на коня

Плохо искал, внизу посмотри
Не совсем аналогична. Технически "^тип" = "ID предмета в сумке" но практически у меня не работала запись типа:
Code:
uo.moveitem(^0x0F09,0,Horse)

а так работает:
Code:
uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")

уж ХЗ почему.

про вармод не уверен. Конь же не двойным кликом используется. Но надо бы проверить на всякий.

Author:  Makarov [ 2011-01-17 16:55:56 ]
Post subject:  Re: Агилити на коня

Mirage wrote:
про вармод не уверен. Конь же не двойным кликом используется. Но надо бы проверить на всякий.

Да, в таком виде uo.UseObject(Horse) лошадь не атакуется

uo.moveitem() - использует объект, то есть ID (тут мой лук из бэкпака выбрасывается на землю и чрез полсекунды подбирается обратно в пак).
Code:
uo.moveitem(0x401edc47,1,'ground')
Wait(500)
uo.moveitem(0x401edc47,1,'backpack')

Чтоб автоматом определить ИД можно применить uo.findtype() и использовать finditem
Code:
uo.findtype(0x13b1, 'my') ; поиск лука по типу в бэкпаке
uo.moveitem('finditem',1,'ground')
Wait(500)
uo.moveitem('finditem',1,'backpack')


а такая конструкция использует тип
Code:
uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")

круто спасибо, получается одна команда применяясь по разному использует либо тип либо ид! :lol:

Author:  Mirage [ 2011-01-17 17:06:59 ]
Post subject:  Re: Агилити на коня

Makarov wrote:
круто спасибо, получается одна команда применяясь по разному использует либо тип либо ид! :lol:


У нее не только в этом плюс.
Для меня главный плюс не привязывается к определенному ID объекта и сокращение скрипта на несколько строк:

Code:
sub sort()
   uo.exec ("moveitem '_0x0EFA' '0' 'backpack' 25 20 0");spellbook
   uo.exec ("moveitem '_0x0F9E' '0' 'backpack' 40 20 0");Silver Scissors
   uo.exec ("moveitem '_0x1012' '0' 'backpack' 25 20 0");Key
   uo.exec ("moveitem '_0x1012' '0' 'backpack' 25 23 0");Key
   uo.exec ("moveitem '_0x0E9B' '0' 'backpack' 50 20 0");ступка
   uo.exec ("moveitem '0x40380220' '0' 'backpack' 170 20 0");руна
   uo.exec ("moveitem '0x40F03AEC' '0' 'backpack' 150 20 0");руна
   uo.exec ("moveitem '0x40F03791' '0' 'backpack' 160 20 0");руна
   uo.exec ("moveitem '^0x0A3E' '0' 'backpack' 160 170 0");сундук
end sub

сортировка в паке предметов. И не важно какая книга магии, ступка и ключ...

Author:  omi4 [ 2011-01-21 01:05:32 ]
Post subject:  Re: Агилити на коня

Code:
sub Unic()
var Horse='0x001DCBD8'
          If NOT UO.ObjAtLayer('Horse') Then
             uo.UseObject(Horse)
          else
             uo.useobject('self')
                 wait(100)
             uo.exec ("moveitem '^0x0F09' '0' 'Horse' ")
                 wait(100)
             uo.UseObject(Horse)
          Endif
endsub 


Мираж строчка
UO.ObjAtLayer('Horse')
хорса здесь не имя переменной а имя слоя. Поэтому все раком работает... чудом. Правь

Author:  Mirage [ 2011-01-21 10:55:54 ]
Post subject:  Re: Агилити на коня

Не пользуюсь такими скриптами потому и забыл. :roll:
Code:
sub Unic()
var IDHorse='0x001DCBD8'
          If NOT UO.ObjAtLayer('Horse') Then
             uo.UseObject(IDHorse)
          else
             uo.useobject('self')
                 wait(100)
             uo.exec ("moveitem '^0x0F08' '0x0000' 'IDHorse' ")
                 wait(100)
             uo.UseObject(IDHorse)
          Endif
endsub

Author:  omi4 [ 2011-01-29 02:26:55 ]
Post subject:  Re: Агилити на коня

Code:
sub Unic()
   if not UO.ObjAtLayer('Horse') then
      UO.UseObject('lasthorse')
   else
      UO.UseObject('self')
      UO.MoveItem('_0x0F08',1,'lasthorse')
      UO.WarMode(0)
      UO.UseObject('lasthorse')
   endif
end sub


Копируй алгоритм, а не код. Тогда таких ляпов не будет.

Author:  Mirage [ 2011-01-29 14:17:12 ]
Post subject:  Re: Агилити на коня

Про ластхорс забыл :roll:
Вармод не обязательно - проверили.

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