Нужна Помощь Taming/Тайминг
Posted: 2009-05-03 21:29:34
Пытаюсь написать скрипт:
Стоит у спавна животного, когда животное появилось начинает тамить,
как затамил летит домой по рунбуку, берёт шринк, слезает с животного шринкует, поднимает с пола живку (зашринкованную) и кладёт в сундук, летит обратно, и покругу.
Вот пока что написал но застрял на том, как животное зашринковать.
(Шард ДРВ, чтобы зашринковать надо двойной клик на шринк, потом прицелом на животное)
Заранее всем спасибо кто поможет. Скрипт пишу первый раз, приму всю критику. Может кто-то подправит код...
Стоит у спавна животного, когда животное появилось начинает тамить,
как затамил летит домой по рунбуку, берёт шринк, слезает с животного шринкует, поднимает с пола живку (зашринкованную) и кладёт в сундук, летит обратно, и покругу.
Вот пока что написал но застрял на том, как животное зашринковать.
(Шард ДРВ, чтобы зашринковать надо двойной клик на шринк, потом прицелом на животное)
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
Заранее всем спасибо кто поможет. Скрипт пишу первый раз, приму всю критику. Может кто-то подправит код...