Page 1 of 1
Вопросик
Posted: 2006-08-22 18:45:36
by Slavik
Нашел скрипт на обкладку на инже. Но он у меня почему то глючит, он то выкладывает 2, то три стенда. Иногда вообще один. А не четыре как долен. Почему так? Вот скрипт:
Code: Select all
sub vetki()
#Mihail
var x, item
if uo.getglobal('vetki')=='1' then
uo.print('script already running')
return
end if
uo.setglobal('vetki','1')
x=uo.getserial('lasttarget')
if uo.getdistance(x)>2 then
uo.print('target too far')
uo.setglobal('vetki','0')
return
end if
item=surch()
uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,item)
wait(800)
item=surch()
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)-1),0,item)
item=surch()
wait(800)
item=surch()
uo.drop("1",str(uo.getx(x)+1),str(uo.gety(x)),0,item)
wait(800)
item=surch()
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)+1),0,item)
uo.setglobal('vetki','0')
end sub
sub surch()
var n
Dim Items[6]
## ???? ???? ????????? ???? ????????? ##
Items[0] = 0x0EB5
Items[1] = 0x0EB5
Items[2] = 0x0EB5
Items[3] = 0x0EB5
Items[4] = 0x0EB5
Items[5] = 0x0EB5
###################
for n = 0 to 2
uo.findtype(Items[n],-1,'backpack')
if uo.findcount() then
return uo.getserial('finditem')
end if
next
end sub
Posted: 2006-08-22 18:59:06
by Nmy
скрипты на обклад тут хватают... ищи...
Code: Select all
sub obklad()
var musor = type # пропиши здесь тип, чем обкладываешь
var x=uo.getserial('lasttarget')
var delay=700
uo.set('lasttarget','laststatus')
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,"finditem")
endif
wait(delay)
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)-1),0,"finditem")
endif
wait(delay)
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)+1),str(uo.gety(x)),0,"finditem")
endif
wait(delay)
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)+1),0,"finditem")
endif
end sub
Posted: 2006-08-22 19:01:51
by Slavik
Да этот вроде тоже нормальный. Это у меня лаги какие то походу. Может кто знает. А вообще у меня был еще один скрипт на обкладку, нажатием на 4 кнопки, так он так же глючил, хочет выкинет стенд, хочет не выкинет. Незнаю что с этим делать.
Posted: 2006-08-22 19:05:55
by Slavik
С твоим скриптом тоже самое, хочет выкладывает, хочет нет. Я непойму почему так?
Posted: 2006-08-22 19:17:00
by Nmy
значит у тебя лаги, вместо вейт ставь Checklag() иго можно наидти на форуме...
Posted: 2006-08-22 19:22:45
by Slavik
Можешь найти плз? Я тут вообще не разбераюсь.
Posted: 2006-08-22 19:37:27
by I'm
Checklag() есть практически в каждом втором скрипте.
Posted: 2006-08-22 19:40:00
by I'm
viewtopic.php?t=7379
Самый распространенный вариант ИМХО:
Code: Select all
sub CheckLag()
UO.DeleteJournal()
UO.Click("backpack")
Repeat
Wait(500)
Until UO.InJournal("backpack")
end sub
Posted: 2006-08-22 19:46:06
by Slavik
И как это вставить в скрипт который выложил один человек выше? Я автомеханик по профессии, так что мне эти скрипты в дековенку.

Если не трудно, то выложите сразу скрипт который может работать с лагами. Хотя вроде лагов у меня не должно быть, выделенная линия как никак, но все же.
Posted: 2006-08-22 20:25:55
by Slavik
Проверил, обкладка не работает не из-за лагов, лагов нет. Чисто ради интереса поставил задержку в 5 секунд между выкладываеием стендов и все равно то выклыдвает стенды, то не выкладывает. Причем если несколько раз нажимать на обкладку, то он все же кинет стенды туда, куда кинуть не мог. Когда не может кинуть стенд, пишет вот эту фразу : Cant't pickup item.
Причем я так же не мог выкладывать нормально стенды даже на пилоте! Все равно то выложит, то нет. У кого такое было и как это решали? Может что в натройках самой ультимы нужн сделать?
Posted: 2006-08-22 21:07:26
by Nmy
Code: Select all
sub obklad()
var musor = type # пропиши здесь тип, чем обкладываешь
var x=uo.getserial('lasttarget')
uo.set('lasttarget','laststatus')
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,"finditem")
endif
CheckLag()
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)-1),0,"finditem")
endif
CheckLag()
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)+1),str(uo.gety(x)),0,"finditem")
endif
CheckLag()
uo.findtype(musor,'-1','2')
if uo.findcount() then
uo.drop("1",str(uo.getx(x)),str(uo.gety(x)+1),0,"finditem")
endif
end sub
sub CheckLag()
UO.DeleteJournal()
UO.Click("backpack")
Repeat
Wait(200)
Until UO.InJournal("backpack")
end sub
напишы
,set grabdelay 0
может у тебя в паке 4 штуки, кидая их напол, они поворачиваются, а если они повернулись, тогда их тип меняется

Posted: 2006-08-22 23:01:46
by Slavik
Не, тип один и тот же, проверял. Кстати вот этот скрипт, что ты выложил, он еще хуже у меня работает, чем предыдущий. Отсюда делаем выводы, что инет не лагает, проблема в чем то другом. Но в чем?...
Posted: 2006-08-22 23:18:44
by Slavik
Вот еще пример когда он может выкидывает сено, а может и нет.
Code: Select all
ub dr1()
var x
UO.Set('lasttarget','laststatus')
x=uo.getserial('lasttarget')
uo.findtype("0x0F36")
if uo.findcount() then
uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,"finditem")
else
uo.findtype("0x0E7D")
if uo.findcount() then
uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,"finditem")
end if
end if
end sub
Может это поможет разобраться в моей проблеме
NMY: используй [code][./code] !