Yoko

All sides of Injection
It is currently 2025-12-12 16:55:51

All times are UTC+02:00




Post new topic  Reply to topic  [ 7 posts ] 
Author Message
PostPosted: 2007-04-24 09:18:41 
Offline
User avatar

Joined: 2007-02-22 16:41:27
Posts: 6
Code:
VAR Sunduk='0x40415859' ; ИД сундука где все логи 
VAR TDagger='0x0F51' ; Тип даггера
VAR TLogs='0x1BDD' ; Тип логов
VAR TTorch='0x1BD4' ; Тип торчей
VAR TShaft='0x1BD4' ; Тип шафтов

; В руке или паке даггер, в сундуке логи и запускаем !!!

sub BowCraft_shaft()
uo.useobject(Sunduk)
wait(200)
while 1==1
UO.FindType(TLogs,'0x0000','backpack')
While UO.GetQuantity('finditem')==0
UO.FindType(TLogs,'0x0000',Sunduk)
wait(200)
UO.Grab('1','finditem')
Wend
wait(200) 

uo.WaittargetType(TLogs)
uo.Usetype(TDagger)
uo.WaitMenu('What do you want to carve the wood into?','shaft (1 log)')
wait (1000)
uo.DeleteJournal()
while not (uo.InJournal("You put") or uo.InJournal("You fail"))
wait(10)
wend

if uo.weight > 200 then
UO.SetReceivingContainer(Sunduk)
wait(200)
UO.FindType(TShaft)
if UO.GetQuantity('finditem')>0 then
UO.Grab('0','finditem')
wait(200)
end if
UO.UnSetReceivingContainer()
end if
wend
end sub


Если физлит шафт, то дальше не идёт :(


Top
   
 Post subject:
PostPosted: 2007-04-24 09:31:17 
Offline
User avatar

Joined: 2007-02-22 16:41:27
Posts: 6
Работает нормально минуты две, потом пишет No item Found. Next target ... *etc*


Top
   
 Post subject:
PostPosted: 2007-05-09 10:38:51 
Offline

Joined: 2007-05-09 08:25:58
Posts: 5
у меня такая же хрень :(

_________________
Уверенный шаг вперед,следствие хорошего пинка под зад.


Top
   
 Post subject:
PostPosted: 2007-05-09 11:36:57 
Offline
User avatar

Joined: 2004-12-30 18:13:16
Posts: 175
Location: Russia
Скопировал, будет время разберусь, шард какой ?

_________________
Design, webdev, coding, c#, php, asp.net, xml, perl, sql, ajax, drawing, illustrating, restoration, photo, photoshop, schedule, pron, guitar, lead-guitar, js, jsp, java, dom, html, *nix, struts, cs, etc


Top
   
 Post subject:
PostPosted: 2007-05-09 12:04:45 
Offline
Junior Expert
User avatar

Joined: 2004-06-24 22:08:56
Posts: 3220
Прочитал скрипт вкратце.

Code:
uo.useobject(Sunduk) 
wait(200)


Угу, а если во время World Save'а будет?

Тут лучше checklag() или сверять по lastcontainer, кароче статическая пауза не катит.

Code:
while 1==1 

Тебе конечно пофиг, но инжект будет каждую итерацию цикла сравнивать 1 и 1, мелочь, но лучше написать while true.

Code:
UO.FindType(TLogs,'0x0000','backpack') 
While UO.GetQuantity('finditem')==0

Для таких целей используется uo.FindCount()

Code:
UO.FindType(TLogs,'0x0000',Sunduk) 
wait(200)

Пауза после FindType не нужна.

Code:
UO.Grab('1','finditem')
Wend

А вот после мува - нужна и даже очень, причём динамечкая. Ну или хотя бы checklag().

+ не совсем логично расставлены комманды в скрипте, я бы предложил так:
Code:
UO.FindType(TLogs,'0x0000','backpack') 
If Not UO.FindCount()
UO.FindType(TLogs,'0x0000',Sunduk)
UO.Grab('1','finditem')
checklag()
End If

Кроме того, следует учесть, что вытащить 1 лог из БОЛЬШОЙ стопки - на подавляющем большинстве шардов - не получится.

Читаем скрипт дальше )
Code:
Wend 
wait(200) 

Зачем тут пауза? Может после каждой строчки паузы натолкать?)

Code:
uo.WaittargetType(TLogs) 
uo.Usetype(TDagger)
uo.WaitMenu('What do you want to carve the wood into?','shaft (1 log)')
wait (1000)

Сначала WaitMenu, потом остальные комманды.

Code:
wait (1000) 
uo.DeleteJournal()

Не нужна тут пазуа, вот скажи, зачем тебе СТОЛЬКО пауз?) Тебе надо, чтобы скрипт медленно работал?))

Code:
while not (uo.InJournal("You put") or uo.InJournal("You fail")) 
wait(10)
wend

Несколько устаревшая конструкция с двумя InJournal. И repeat .. until тут использовать логичнее.
Пауза тоже маловата, тут проверять 100 раз в секунду - не надо, хватит и 20.

Вобщем лучше так (если версия Injection.dll поддерживает):
Code:
repeat
   wait( 50 )
until uo.injournal( "You put|You fail" )


Читаем скрипт дальше:
Code:
if uo.weight > 200 then 
UO.SetReceivingContainer(Sunduk)
wait(200)
UO.FindType(TShaft)
if UO.GetQuantity('finditem')>0 then
UO.Grab('0','finditem')
wait(200)
end if
UO.UnSetReceivingContainer()
end if
wend

Типа разгрузка, да?) А ведь можно и проще, да и разгружаться реже:
Code:
if uo.weight >= uo.str*4 then
   while uo.count( TShaft )
      uo.MoveItem( "^" + TShaft, "0", Sunduk )
      checklag()
   wend
endif

uo.str*4 - чуть меньше максимального веса.

Касательно проблемы с тем, что после физла - не крафтит - проверь сообщение, которое выдаёт при физле:
Code:
uo.InJournal("You fail")


PS: Надо бы почаще так расписывать, мб научаться люди чему-нибудь.

_________________
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Skype: d119060


Top
   
 Post subject:
PostPosted: 2007-05-09 12:22:50 
Offline

Joined: 2007-05-09 08:25:58
Posts: 5
DRW

_________________
Уверенный шаг вперед,следствие хорошего пинка под зад.


Top
   
 Post subject:
PostPosted: 2007-05-09 20:16:41 
Offline

Joined: 2007-05-09 08:25:58
Posts: 5
все разобрался я в этом,короче нужно определенные галочки поставить в инже,и логи расскладывать по кучкам в 1к
и все пошло :lol:

_________________
Уверенный шаг вперед,следствие хорошего пинка под зад.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 7 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited