Page 1 of 1
checklag()
Posted: 2017-01-19 17:29:22
by Rayter
Народ давно не играл в ультиму и тут скачал новый инжект и начались проблемы!
запускаю скрипт что ниже и выдает ошибку на: checklag() . Как я понял нужно сделать доп фаил на чек лаг. Но в каком формате и нужно ли его где в инжекте прописывать ?
Code: Select all
sub smelt_ore()
Var bag='0x60BDA7A9' #тут менял на свою сумку
Var Ore='0x19B9'
Repeat
uo.grab(1,bag+'.'+Ore) # выкладываем 1 штуку
checklag()
uo.useobject('^'+Ore)
wait(400)
until not uo.FindCount()
end sub
вот что я нашел про checklag() делал его в папке с инжектом и делал в формате checklag.sc но не помогло может надо где то прописать в инже ?
вот сам скрипт:
Code: Select all
Sub checklag()
deljournal("ackpack")
uo.click("backpack")
repeat
wait(50)
until uo.injournal("ackpack")
endsub
пожалуйста помогите народ разобраться!!!
Re: checklag()
Posted: 2017-01-19 18:13:53
by Mirage
Скрипты в инжекте можно (и чаще нужно) помещать в одном файле.
Re: checklag()
Posted: 2017-01-20 01:15:22
by Rayter
Code: Select all
sub smelt_ore()
Var bag='0x60BDA7A9' #тут менял на свою сумку
Var Ore='0x19B9'
Repeat
uo.grab(1,bag+'.'+Ore) # выкладываем 1 штуку
checklag()
uo.useobject('^'+Ore)
wait(400)
until not uo.FindCount()
end sub
Sub checklag()
deljournal("ackpack")
uo.click("backpack")
repeat
wait(50)
until uo.injournal("ackpack")
endsub
Тоесть это так должно быть ??
Просто мне казалась что функция которая применяется во многих скриптах она как то оптимизировано в одно место как на стелсе!!!
Re: checklag()
Posted: 2017-01-20 13:14:50
by Mirage
В 15 инжекте можно использовать инклюды с выносными скриптами. Если так привычнее то пожалуйста

Но обычно все валят в автолоад который разрастается до неприличных размеров в несколько мегобайт и тах черт ногу сломит

Re: checklag()
Posted: 2017-01-20 18:58:16
by Rayter
Mirage wrote:В 15 инжекте можно использовать инклюды с выносными скриптами. Если так привычнее то пожалуйста

Но обычно все валят в автолоад который разрастается до неприличных размеров в несколько мегобайт и тах черт ногу сломит

Спасибо за ответ! А не подскажите как сделать инклюды ? Если я правильно понял, то нужно создать текстовый документ и засунуть туда скрипт Чеклаг и формат txt изменить на inc checklag.inc.
И еще 1 вопрос, почему выдает ошибку на строку : deljournal("ackpack") ?
Code: Select all
Sub checklag()
deljournal("ackpack")
uo.click("backpack")
repeat
wait(50)
until uo.injournal("ackpack")
endsub
Re: checklag()
Posted: 2017-01-20 19:23:30
by Rayter
Как сделать скрипт разобрался но пришлось обрыть форум и искать привязки.
Вообщем вот так выглядит рабочий скрипт.
Code: Select all
sub smelt_ore()
Var bag='0x48DA61AC' #??? ????? ?? ???? ?????
Var Ore='0x19B9'
Repeat
uo.grab(1,bag+'.'+Ore) # ??????????? 1 ?????
checklag()
uo.useobject('^'+Ore)
wait(400)
until not uo.FindCount()
end sub
Sub checklag()
deljournal("ackpack")
uo.click("backpack")
repeat
wait(50)
until uo.injournal("ackpack")
endsub
Sub deljournal(msg)
while uo.injournal(msg)
uo.setjournalline(uo.injournal(msg)-1,"")
wend
endsub
Sub DeleteJournal(msg)
var nom = UO.InJournal(msg)
If nom>0 Then
UO.SetJournalLine(Nom - 1," -- replaced -- ")
DeleteJournal(msg)
EndIf
endsub
Единственное хотел бы разобраться как сделать инклуды и позапихать в инжект.! Может есть у когоБ, все готовые инклуды в одном файле, чтоб скачать и просто залить в папку с инжектом ?
Re: checklag()
Posted: 2017-01-21 09:47:12
by Mirage
Создаешь файлы autoload.sc и autoload.inc
Скрипты которые будешь часто править помещаешь в первый, а всякие чеклаги, проверялки и остальные особо не требующие частого редактирования помещаешь в autoload.inc
В конце autoload.sc пишешь строку:
#include(autoload.inc)
Все сохраняешь и запускаешь игру. В редакторе скриптов в инжекте будут те скрипты которые есть в autoload.sc. Что бы редактировать инклюд придется открывать его руками в блокноте, изменения применятся после перезапуска клиента.
Содержимое файла autoload.sc
Code: Select all
sub smelt_ore()
Var bag='0x48DA61AC' #??? ????? ?? ???? ????? ; <---- что бы не было вот так переключай раскладку клавиатуры на русскую и после копируй скрипт.
Var Ore='0x19B9'
Repeat
uo.grab(1,bag+'.'+Ore) # ??????????? 1 ?????
checklag() ; <------------ вызов функции либо из инклюда либо из самого скрипта.
uo.useobject('^'+Ore)
wait(400)
until not uo.FindCount()
end sub
#include(autoload.inc)
Содержимое файла autoload.inc
Code: Select all
Sub checklag()
deljournal("ackpack")
uo.click("backpack")
repeat
wait(50)
until uo.injournal("ackpack")
endsub
Sub deljournal(msg)
while uo.injournal(msg)
uo.setjournalline(uo.injournal(msg)-1,"")
wend
endsub
Sub DeleteJournal(msg)
var nom = UO.InJournal(msg)
If nom>0 Then
UO.SetJournalLine(Nom - 1," -- replaced -- ")
DeleteJournal(msg)
EndIf
endsub
Re: checklag()
Posted: 2017-01-21 10:51:20
by Rayter
Спасибо огромное!!! Разжевал полностью.