Script

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Ramin
Posts: 9
Joined: 2004-10-08 15:53:26

Script

Post by Ramin »

Я наверно уже всем надоел но очень надо :) скрипт на перекладывание руды в пак хорс ...
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

А перетаскивание на лошадь не пашет?
Ramin
Posts: 9
Joined: 2004-10-08 15:53:26

Post by Ramin »

AGRS wrote:А перетаскивание на лошадь не пашет?

неа
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

А на пак лошади? :roll:
GrayLord
Expert!
Posts: 333
Joined: 2004-06-04 03:24:25
Contact:

Post by GrayLord »

если у вас на шарде пак "грузовой" лошади открывается по двойному клику на ней, то можно использовать примерно такую конструкцию:

Code: Select all

sub main()
    var packhorse='0x01234567' # заменить на сериал "грузовой"
лошадки
    var bpack, ore='0x0123' # заменить на objtype руды
    ...
    uo.useobject('backpack')
    bpack=uo.getserial('lastcontainer')
    uo.useobject(packhorse)
    repeat
        wait(100)
    until bpack<>uo.getserial('lastcontainer')
    bpack=uo.getserial('lastcontainer')
    while uo.count(ore)>0
         uo.waittargettype(ore)
         uo.addobject("ores")
         uo.moveitem("ores",uo.getquantity("ores"),bpack)
         repeat
             wait(100)
         until uo.containerof("ores")==bpack
    wend
    ....
end sub
Ramin
Posts: 9
Joined: 2004-10-08 15:53:26

Post by Ramin »

Неработает , пак хорсы открывает а руду не ложит .
GrayLord
Expert!
Posts: 333
Joined: 2004-06-04 03:24:25
Contact:

Post by GrayLord »

Ramin wrote:Неработает , пак хорсы открывает а руду не ложит .

круто.
а если просто заменить
uo.moveitem("ores",uo.getquantity("ores"),bpack)
на
uo.moveitem("ores",uo.getquantity("ores"),packhorse)
Ramin
Posts: 9
Joined: 2004-10-08 15:53:26

Post by Ramin »

GrayLord wrote:
Ramin wrote:Неработает , пак хорсы открывает а руду не ложит .

круто.
а если просто заменить
uo.moveitem("ores",uo.getquantity("ores"),bpack)
на
uo.moveitem("ores",uo.getquantity("ores"),packhorse)

он не добавляет даже обжект ores
GrayLord
Expert!
Posts: 333
Joined: 2004-06-04 03:24:25
Contact:

Post by GrayLord »

Ramin wrote:
GrayLord wrote:
Ramin wrote:Неработает , пак хорсы открывает а руду не ложит .

круто.
а если просто заменить
uo.moveitem("ores",uo.getquantity("ores"),bpack)
на
uo.moveitem("ores",uo.getquantity("ores"),packhorse)

он не добавляет даже обжект ores

а тип руды правильно прописал?
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

Боже! Что вы тут понамутили!
Это же одной строкой делается.

UO.MoveItem('_'+OreType, '0', Horse), где OreType - графический тип руды, а Horse - серийник лошади или ее рюкзака.

И все сразу будет видно. Работает, али нет.
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

И неплохо бы узнать для какого шарда, а то может мы зря тут колупаемся? :)
GrayLord
Expert!
Posts: 333
Joined: 2004-06-04 03:24:25
Contact:

Post by GrayLord »

AGRS wrote:И неплохо бы узнать для какого шарда, а то может мы зря тут колупаемся? :)

=)
Ramin
Posts: 9
Joined: 2004-10-08 15:53:26

Post by Ramin »

AGRS wrote:И неплохо бы узнать для какого шарда, а то может мы зря тут колупаемся? :)

Сфера , WorldHearts
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

Ramin wrote:
AGRS wrote:И неплохо бы узнать для какого шарда, а то может мы зря тут колупаемся? :)

Сфера , WorldHearts


См мое предложение. Под сферой должно пахать.
GrayLord
Expert!
Posts: 333
Joined: 2004-06-04 03:24:25
Contact:

Post by GrayLord »

учитывая всё, сказанное выше, приведенный ранее скрипт можно изменить так:
1) если требуется открытие пака лошади:

Code: Select all

sub main() 
    var packhorse='0x01234567' # заменить на сериал "грузовой" лошадки
    var bpack, ore='0x0123' # заменить на objtype руды
    var tmp
    ...
    bpack=uo.getserial('lastcontainer')
    uo.useobject('backpack')     
    repeat
        wait(100)
    until uo.getserial('lastcontainer')==uo.getserial('backpack')
    uo.useobject(packhorse)
    repeat
        wait(100)
    until bpack<>uo.getserial('lastcontainer')
    bpack=uo.getserial('lastcontainer')
    while uo.count(ore)>0
         tmp=uo.count(ore)
         uo.moveitem('_'+ore,"0",bpack)
         repeat
             wait(100)
         until tmp<>uo.count(ore)
    wend
    ....
end sub

2) если оно нам сто лет не надо, и можно просто "таскать" предметы на лошадку:

Code: Select all

sub main() 
    var packhorse='0x01234567' # заменить на сериал "грузовой" лошадки
    var ore='0x0123' # заменить на objtype руды
    var tmp
    ...
    while uo.count(ore)>0
         tmp=uo.count(ore)
         uo.moveitem('_'+ore,"0",packhorse)
         repeat
             wait(100)
         until tmp<>uo.count(ore)
    wend
    ....
end sub
Post Reply