Написал скрипт !Но он не пашит как надо помогите!Плз

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Serfios
Posts: 3
Joined: 2005-10-09 22:30:19

Написал скрипт !Но он не пашит как надо помогите!Плз

Post by Serfios »

Парни конечно я токо учусь писать скрипт!Но у меня что-то не получается от части он работает !Но всетаки не то!
Помоги просьба! Иль найдите мою ошибку!
Нужно чтобы лутил амулет!Но проблема в том что труп он открывает
а амулет не лутит! Токо со второго нажати е кнопки , но ето не удобно так как его уже слутят!
Вот собственно и скрипт:


Code: Select all

sub c_l2() 
var i,n
Dim A[1]
A[1]="0x1088" ;amul


UO.UseObject('lastcorpse') 
i = 50
FOR n=1 TO 1
uo.findtype(A[n],"-1","lastcorpse")
if uo.findcount() > 0 then
UO.grab(1, "finditem")
uo.print("Found "+str(uo.findcount()))
END if
next
end sub 



Хелп ми ПЛЗ :roll:
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Трабла в том что твой скрипт не ждет пока труп откроется...
Есть варинт но ты должен быть уверен что труп не пустой...
Тоесть смысл такой... пытаешься подсчитать сколько и темов в трупе как правело оно равно 0 если труп ниразу не открывался... как только он откроется и там чтото будет сразу начинаем искать амулет и лутить его
Что то типа

Code: Select all

sub c_l2() 
var a
 
a=0x1088 ;amul
UO.UseObject('lastcorpse')
uo.FindType(-1, -1, 'lastcorpse')

while not Uo.FindCount()
uo.FindType(-1, -1, 'lastcorpse')
wait(10)
wend

uo.findtype(a,-1,'lastcorpse')
if uo.findcount() then
UO.grab(1, 'finditem')
uo.print("Found "+str(uo.findcount()))
End if
 
end sub

если ты уверен что там 100% амулет и ты хочешь его слутать то можно еще такой вариант

Code: Select all

sub c_l2_b() 
var a=0x1088 ;amul
UO.UseObject('lastcorpse')
uo.FindType(a, -1, 'lastcorpse')
while not Uo.FindCount()
uo.FindType(a, -1, 'lastcorpse')
wait(10)
wend
UO.grab(1, 'finditem')
uo.print("Found "+str(uo.findcount()))
end sub
Serfios
Posts: 3
Joined: 2005-10-09 22:30:19

Post by Serfios »

Оооо спасибо большое 2 скрипт то что надо!

Но проблема он выдает что типо нет канцовки скрипта!или ето ошибка выдаеца если нет амулета?
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Прям так и говорит?;)
Или ты имеешь в виду что скрипт весит и не хочет заканчиваться?
первый скрипт просто самый простой вариант который провреряет открытие трупа... но открытие провреряется по схеме если там есть итем... Если и теммов нету то скрипт будет весеть и думать что труп еще не открыт... дальше если там есть хоть 1 предмет то скрипт перерейдет к поиску амуля... дальше если найдет или нет то он за вершится.
Второй скрипт орентирована на то что в трупе 100% есть амулет...
Если его нету то он уйдет в зацикливвание
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Post by admir »

а может таймер поставить на 2ой ) типа 5 секунд и он вырубаеца .
я только не понимаю смысл в цикле поиска? он что с 1 раза не всегда находит ? если он там есть то найдет если нету то не найдет .

вот так попробуй

Code: Select all

sub c_l2_b() 
var a=0x1088 ;amul
UO.UseObject('lastcorpse')
uo.FindType(a, -1, 'lastcorpse')
wait(100)
If UO.FindCount() Then
UO.grab(1, 'finditem')
uo.print("Found "+str(uo.findcount()))
end if
end sub
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Не проше ли включить corpses autoopen, или поставить задержку после открытия трупа?
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Code: Select all

sub loot()
useobject('lastcorpse')
checklag()
uo.findtype()
if uo findcount() then
uo.grab()
else
return
endif
endsub
Serfios
Posts: 3
Joined: 2005-10-09 22:30:19

Post by Serfios »

Grin wrote:Прям так и говорит?;)
Или ты имеешь в виду что скрипт весит и не хочет заканчиваться?
первый скрипт просто самый простой вариант который провреряет открытие трупа... но открытие провреряется по схеме если там есть итем... Если и теммов нету то скрипт будет весеть и думать что труп еще не открыт... дальше если там есть хоть 1 предмет то скрипт перерейдет к поиску амуля... дальше если найдет или нет то он за вершится.
Второй скрипт орентирована на то что в трупе 100% есть амулет...
Если его нету то он уйдет в зацикливвание


Да да пишет что не может найти итем!
Но пек открывает всеравно приходица нажимать два раза! Нужно чтоб моментом лутил! Токо Туп падает и сразу случивать должен !
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Serfios wrote:
Grin wrote:Прям так и говорит?;)
Или ты имеешь в виду что скрипт весит и не хочет заканчиваться?
первый скрипт просто самый простой вариант который провреряет открытие трупа... но открытие провреряется по схеме если там есть итем... Если и теммов нету то скрипт будет весеть и думать что труп еще не открыт... дальше если там есть хоть 1 предмет то скрипт перерейдет к поиску амуля... дальше если найдет или нет то он за вершится.
Второй скрипт орентирована на то что в трупе 100% есть амулет...
Если его нету то он уйдет в зацикливвание


Да да пишет что не может найти итем!
Но пек открывает всеравно приходица нажимать два раза! Нужно чтоб моментом лутил! Токо Туп падает и сразу случивать должен !

Мой вариант пробовал? -)
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

просто CheckLag() воткни после открывания.
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Проыверка в цикле только для того что бы дождатся открытия трупа...
НЕ брать за держку из воздуха... а получить нормальный результат...
но если уже по чесному... то нужно юзать комбинацию ласт корпса и ласт контейнера...
Когда их айдишники сровляются то значит контейнер открыт... хотя сие предположение надо проверять;)
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Grin wrote:Проыверка в цикле только для того что бы дождатся открытия трупа...
НЕ брать за держку из воздуха... а получить нормальный результат...
но если уже по чесному... то нужно юзать комбинацию ласт корпса и ласт контейнера...
Когда их айдишники сровляются то значит контейнер открыт... хотя сие предположение надо проверять;)
не будет её там из воздуха ;) при наличии хорошего конекта... а при отсутсвии оного - какая разница как ждать?

ЗЫ у меня в цикле wait(10) - комп не хило убивает.
Titanium
Posts: 73
Joined: 2004-10-20 22:46:03
Location: Moscow
Contact:

Post by Titanium »

Sfagnum wrote:
Grin wrote:Проыверка в цикле только для того что бы дождатся открытия трупа...
НЕ брать за держку из воздуха... а получить нормальный результат...
но если уже по чесному... то нужно юзать комбинацию ласт корпса и ласт контейнера...
Когда их айдишники сровляются то значит контейнер открыт... хотя сие предположение надо проверять;)
не будет её там из воздуха ;) при наличии хорошего конекта... а при отсутсвии оного - какая разница как ждать?

ЗЫ у меня в цикле wait(10) - комп не хило убивает.


Лично я не люблю использовать чеклаг в таком варианте как его обычно делают (клик по бэкпэку), т.к. вызывает дополнительные сообщения в журнале и на экране...
I'm Titanium [Dragon] from Nova UO Shard
Post Reply