Скрипт на БС(ексепт или не експт) хелп

Ask for help

Moderators: Murderator+, Murderator

Post Reply
Grizl
Posts: 10
Joined: 2004-11-26 16:08:35
Location: Одесса
Contact:

Скрипт на БС(ексепт или не експт) хелп

Post by Grizl »

История такова : Собрал(именно собрал) скрипт на БС с целью выуживания ексептовых вещей при прокачке или "так",но что то где то не так и скрипт не работает - пишет ошибку в 44 линии.Может кто глянет опытным глазом и поможет мне? Идея скрипта :
1)находит нап полу инготы,кует последнюю вещь;
2)должен по идее находить ексепт вещь и скидывать а пол(тут и возникает проблема ,может подправите что?)
3)плавит вещи ;
4)сбрасывает инготы в кучку уже лежащую на полу.

sub main()
start:
uo.set("distance","1")
while not uo.dead()
If UO.Count ("0x1BF2") == 0 Then
wait (1000)
UO.Waittargetground ('0x1BF2')
wait (100)
UO.Usetype ("0x13E3")
wait (500)
UO.Lclick (76,390)
wait (2000)
UO.Lclick (76,390)
wait (65000)
plav()
wait(2000)
dropi()
While (UO.ObjAtLayer('Bpack') == '')
wait(10000)
wend
Nuke_hungry()
else

UO.Waittargettype ("0x1BF2")
wait (100)
UO.Usetype ("0x13E3")
wait (500)
UO.Lclick (76,390)
wait (65000)
wait (500)
endif
wend
end sub

sub prov()
if UO.Count("0x143A")<1 then # check for items in the backpack
goto start
else
UO.FindType("0x143A") #serching the items
Wait(500)
UO.addobject("a","finditem")
wait(500)
if UO.getname("a") == "Exceptional shadow gorget [Crafted by Nike]"
uo.exec("drophere finditem")
wait(1000)
else
plav()
end sub


sub plav()
var i=0
while i < 10
uo.waittargettype('0x143A')
uo.usefromground('0x0fb1')
wait(3000)
i = i+1
wend
i=0
wait(5000)
end sub

sub dropi()
UO.Exec("set finddistance 1")
var d = '0x1BF2'
drop(d)
end sub
sub drop(d)
var serial=0
var color=-1
var container = "ground"
while UO.Count(d) > 0
UO.FindType(d,-1,"my")
serial=UO.GetSerial("finditem")
color=UO.GetColor(serial)
UO.Ignore(serial)
if container=="ground" then
UO.FindType(d,color,"ground")
if UO.FindCount()>0 then
UO.MoveItem(serial,"0","finditem","0","0","0")
else
UO.DropHere(serial)
endif
else
UO.MoveItem(serial,"0",container)
endif
wait(1000)

UO.IgnoreReset()
end sub

sub Nuke_hungry()
wait(400)
uo.serverprint(".hungry")
wait(800)
if ((uo.lastmessage()=="You are DYING of hunger...") or (uo.lastmessage()=="You are almost dying of hunger") or (uo.lastmessage()=="You are starving") or (uo.lastmessage()=="Your stomash hurts and you feel dizzy")or (uo.lastmessage()=="Your stomash hurts") or (uo.lastmessage()=="You are REALLY hungry") or (uo.lastmessage()=="You are somewhat hungry") or (uo.lastmessage()=="You are a little hungry") or (uo.lastmessage()=="You aren't hungry at all"))==true then
uo.exec("usetype 0x097B")
endif
endsub


З.Ы. Скрипт рассчитан на POL
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

ты бы хоть пёрнул для ориентиру(с)

подсвети строчечку за номером 44, будь добр, а то я с константами не работаю ;)
всё равно в коде не запихал...

сорри если что не так...
Grizl
Posts: 10
Joined: 2004-11-26 16:08:35
Location: Одесса
Contact:

Post by Grizl »

Sfagnum wrote:ты бы хоть пёрнул для ориентиру(с)

подсвети строчечку за номером 44, будь добр, а то я с константами не работаю ;)
всё равно в коде не запихал...

сорри если что не так...
Сорри - думал,что будете юзать скрипт,сами найдете )
Вот она
uo.exec("drophere finditem")
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

uo.drophere('finditem') чем плох?
Grizl
Posts: 10
Joined: 2004-11-26 16:08:35
Location: Одесса
Contact:

Post by Grizl »

Sfagnum wrote:uo.drophere('finditem') чем плох?

наоборот даже очень хорош,но не помогает - та же ошибка/ Даже незнаю что делать...
Goggy
Posts: 291
Joined: 2004-11-07 01:22:35
Location: Черкассы
Contact:

Post by Goggy »

а ты мувани попробуй :D
Arsuri
Posts: 62
Joined: 2005-02-25 13:31:26
Location: DRW, [Hussars]
Contact:

Post by Arsuri »

2Grizl: Пробуй записать так UO.Findtype('0x143A', '-1', 'backpack'), скрипт не находит объект, потому fimditem пустой, что приводит к ошибке в uo.drophere('finditem')
Last edited by Arsuri on 2005-03-15 11:45:14, edited 1 time in total.
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Arsuri wrote:2Grizl: Пробуй записать так UO.Findtype('0x143A', '-1', ,backpack'), скрипт не находит объект, потому fimditem пустой, что приводит к ошибке в uo.drophere('finditem')
и не найдёт... на досуге в хелп загляни и посмотри как прально юзать эту ф-ю...

Code: Select all

UO.Findtype('0x143A', '-1','backpack')
if UO.FindCount() > 0 then
    UO.DropHere('finditem')
end if
Arsuri
Posts: 62
Joined: 2005-02-25 13:31:26
Location: DRW, [Hussars]
Contact:

Post by Arsuri »

Sfagnum wrote:и не найдёт... на досуге в хелп загляни и посмотри как прально юзать эту ф-ю...

Code: Select all

UO.Findtype('0x143A', '-1','backpack')
if UO.FindCount() > 0 then
    UO.DropHere('finditem')
end if

Опечатался, уже в хелп посылают... :(
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Arsuri wrote:Опечатался, уже в хелп посылают... :(
с кем не бывает ;) тут разные люди ходют... поэтому и написал.
хех... таки посмотре скрипт повнимательнее

Code: Select all

if UO.getname("a") == "Exceptional shadow gorget [Crafted by Nike]" 
uo.exec("drophere finditem")
wait(1000)
else
plav()
end sub
тут пару вопросов...
1. при проверке обращаешься одним образом, при скидывании другим... не хорошо это ;) попробуй UO.DropHere('a')
2. end if не уважаем? но эт так... ;)

PS не надо в личку гадить...
Arsuri
Posts: 62
Joined: 2005-02-25 13:31:26
Location: DRW, [Hussars]
Contact:

Post by Arsuri »

Посмотрел повнимательнее, тут

Code: Select all

if UO.getname("a") == "Exceptional shadow gorget [Crafted by Nike]" 
 

надо бы еще then в конце строки добавить.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

и Then в конец строки, и Endif в конец ифа. Именно в этом и ошибка
Goggy
Posts: 291
Joined: 2004-11-07 01:22:35
Location: Черкассы
Contact:

Post by Goggy »

гыыы а флуду на 12 сообщений :lol: :lol:
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Goggy wrote:гыыы а флуду на 12 сообщений :lol: :lol:
да уж... чел дал ложную инфу... оттого и траблы... да и орфографию проверять... это не сюда ;)
Grizl
Posts: 10
Joined: 2004-11-26 16:08:35
Location: Одесса
Contact:

Post by Grizl »

Спасибо всем - многое исправил и почти все работает,но мне кажется,что функция UO.getname в моем скрипте не срабатывает так,как того хотелось.Может кто подскажет,как проверить имя вещи? :?
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Post by Yoko »

while uo.getname("finditem")==""
uo.click("finditem")
wait(300)
wend
Post Reply