Стоит у спавна животного, когда животное появилось начинает тамить,
как затамил летит домой по рунбуку, берёт шринк, слезает с животного шринкует, поднимает с пола живку (зашринкованную) и кладёт в сундук, летит обратно, и покругу.
Вот пока что написал но застрял на том, как животное зашринковать.
(Шард ДРВ, чтобы зашринковать надо двойной клик на шринк, потом прицелом на животное)
Code: Select all
var RuneToHome=1 ## - Рунка домой
var RuneToLama=4 ## - Рунка к Ламе
var OldX,OldY,time ## - Для рекола.
var Runbook='0x401D377B'
var sunduk='0x4034C58B'
var shrnk = '0x0F0E'
var shrnkcolor = '0x0388'
var lamka = '0x00DB' ## Тип ламы
var lamka2 = '0x2137' ## Тип ламы в шринке
######## Здесь скрипт на тамление животного #############
sub ToRecall()
RecallToHome() ## Летим домой
wait(6000)
shrinkk() ## Берём шринк, слезаем с ламы, шринкуем ламу
wait (2000)
vsunduk() ## Ищем под собой Ламу в шринке и кладём её в сундук
цфше (4000)
RecallToLama() ## Летим к ламе
end sub
sub shrinkk()
uo.FindType(shrnk,shrnkcolor,sunduk) ## Ищем шринк в сундуке, берём 1-ин, если нет то сообщаем "Шринков НЕТ!!!"
CheckLag()
if uo.FindCount() > 0 then
uo.grab('1','finditem')
wait (300)
else
uo.print('Шринков НЕТ!!!')
end if
UO.UseObject('self') ## Слезаем с животного
CheckLag()
wait (900)
uo.usetype(shrnk) ## кликаем на щринк
wait (1000)
### Ищем ламу и шринкуем её, вот здесь и проблема, как таргет на Ламу зделать с которой слез?
end sub
sub vsunduk()
wait (100)
uo.findtype (lamka2,-1, 'ground')
if UO.FindCount('finditem') then
UO.MoveItem('finditem', 0, sunduk)
wait (200)
end sub
sub RecallToHome()
uo.Print('Прыгаем Домой.')
RunebookRecall(RuneToHome)
end sub
sub RecallToLama()
uo.Print('Прыгаем к Ламе.')
RunebookRecall(RuneToLama)
end sub
sub RunebookRecall(n)
OldX=uo.GetX()
OldY=uo.GetY()
repeat
uo.Exec('warmode 0')
uo.UseObject(Runbook)
CheckLag()
uo.LClick(135, n*15+55)
CheckLag()
time=uo.Timer()
repeat
wait(500)
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs') or uo.InJournal('fizzles') or time+200<uo.Timer()
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs')
end sub
sub CheckLag()
if uo.Waiting()>0 then
uo.Exec('canceltarget')
end if
uo.DeleteJournal()
uo.Click('backpack')
repeat
wait(50)
until uo.InJournal('backpack')
end sub
Заранее всем спасибо кто поможет. Скрипт пишу первый раз, приму всю критику. Может кто-то подправит код...