Подскажите команду..
Moderators: Murderator+, Murderator
Подскажите команду..
есть скрипт на мининг, копает вокруг себя на 25 клеток, при достижение веса он плавить инги и снова копает.
и когда приходиться сбрасывать то меня малость напрягает это,
а суть такого, как можно сделать чтобы я подошел к чару положил рядом сумочку и после волшебного слова он начал скидывать руду, не отвлекаясь от работы копания
и когда приходиться сбрасывать то меня малость напрягает это,
а суть такого, как можно сделать чтобы я подошел к чару положил рядом сумочку и после волшебного слова он начал скидывать руду, не отвлекаясь от работы копания
Re: Подскажите команду..
Да, можно.
Что-то вроде такого:
Скрипт не проверял, писал сразу в окне ответа на форуме. Но в теории должно работать.
Что-то вроде такого:
Code: Select all
sub unloader()
var keyword = 'unload'
var oreType = '0x0000'
var bagType = '0x0000'
var bag
while not UO.Dead()
UO.DeleteJournal()
while not UO.InJournal(keyword)
wait(1000)
wend
UO.Set('finddistance','2')
UO.FindType(bagType,-1,'ground')
if (UO.FindCount() == 0) then
UO.Say('No bag found!')
else
bag = UO.GetSerial('finditem')
UO.Grab(1,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
while UO.FindCount() > 0
UO.MoveItem('finditem',0,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
wend
UO.Drop(0,UO.GetX(),UO.GetY(),UO.GetZ(),bag)
wait(500)
endif
wend
endsub
Скрипт не проверял, писал сразу в окне ответа на форуме. Но в теории должно работать.
Re: Подскажите команду..
Спасибо большое. Тока этот макрос не работает с макросом мининга, на пару, когда макрос мининга начинает плавить то твой макрос мешает определять кол-во руды которую надо переправить, т.е. он вмешиваеться в каут ресурсы плавильни, и пытаеться все инги сбросить в мешок, которого в свое время нету рядом.
могу скинуть макр мининга с плавилкой, может придумаешь что-нить на досуге.
Заранее благодарен
могу скинуть макр мининга с плавилкой, может придумаешь что-нить на досуге.

Заранее благодарен
Re: Подскажите команду..
Я так точно ничего на досуге не придумаю. Можешь почитать данный мной скрипт, и на досуге почитать учебник скриптинга на форуме. Может что и получится.
Re: Подскажите команду..
а можешь дать сылку на этот урок,
я так попробую другой макрос разобрать и приделать к твоему,
я так попробую другой макрос разобрать и приделать к твоему,
Re: Подскажите команду..
Подскажите как соеденить два скрипта
1) скидывает руду в мешочек (за скрипт спасибо Beyonder)
2) копает вокруг себя + плавит
мне надо соеденить их так чтобы не запускаеть оба макроса. Т.е. я запускаю мининг и он копает, но так же и отслеживает журнал, и когда журнале появилась надпись он начинает скидывать в мешочек. Пытался сделать сам, но у меня скрипт доходит до места где указано волшебное слово и вставал в ступор и ждал, а мне надо чтобы он следил за журналом, и если волшебое слово проскочит то выполнил команду Анлоадер
зы когда запускаю их вместе, инжа бывает дает сбои и окно трешаеться
или не бывает того чего я прошу?
1) скидывает руду в мешочек (за скрипт спасибо Beyonder)
sub unloader()
var keyword = 'unload'
var oreType = '0x0000'
var bagType = '0x0000'
var bag
while not UO.Dead()
UO.DeleteJournal()
while not UO.InJournal(keyword)
wait(1000)
wend
UO.Set('finddistance','2')
UO.FindType(bagType,-1,'ground')
if (UO.FindCount() == 0) then
UO.Say('No bag found!')
else
bag = UO.GetSerial('finditem')
UO.Grab(1,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
while UO.FindCount() > 0
UO.MoveItem('finditem',0,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
wend
UO.Drop(0,UO.GetX(),UO.GetY(),UO.GetZ(),bag)
wait(500)
endif
wend
endsub
2) копает вокруг себя + плавит
sub mining()
walk(1000,1586,'')
var mx, my, mz, i, j
var ismining, ixx, isheavy
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
While not UO.Dead()
UO.DeleteJournal()
for i = mx-2 to mx+2
for j = my-1 to my+2
UO.Print("Now Mining In: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("no ore here")
wait(4000)
if uo.weight > 320 then ; Ìàêñèìàëüíûé âåñ ïðè êîòîðîì ÷àð èäåò ïåðåïëàâëÿòü ðóäó
plav()
endif
UO.DeleteJournal()
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Usetype('0x0E85')
while not UO.InJournal("no ore")
wait(100)
wend
while UO.InJournal("but fail")
Wait (3000)
UO.DeleteJournal()
wend
wend
UO.DeleteJournal()
next
next
wend
UO.DeleteJournal()
end sub
мне надо соеденить их так чтобы не запускаеть оба макроса. Т.е. я запускаю мининг и он копает, но так же и отслеживает журнал, и когда журнале появилась надпись он начинает скидывать в мешочек. Пытался сделать сам, но у меня скрипт доходит до места где указано волшебное слово и вставал в ступор и ждал, а мне надо чтобы он следил за журналом, и если волшебое слово проскочит то выполнил команду Анлоадер
зы когда запускаю их вместе, инжа бывает дает сбои и окно трешаеться
или не бывает того чего я прошу?
Re: Подскажите команду..
Так уж и быть, я сегодня снова добрый.
Code: Select all
sub checkUnloadCommand()
var keyword = 'unload'
var oreType = '0x0000'
var bagType = '0x0000'
var bag
if UO.InJournal(keyword)
DeleteJournal(keyword) ## Поищи, где-то на форуме эта функция была. Я сейчас не дома так что не помню как та функция выглядит
UO.Set('finddistance','2')
UO.FindType(bagType,-1,'ground')
if (UO.FindCount() == 0) then
UO.Say('No bag found!')
else
bag = UO.GetSerial('finditem')
UO.Grab(1,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
while UO.FindCount() > 0
UO.MoveItem('finditem',0,bag)
wait(500)
UO.FindType(oreType,-1,'backpack')
wend
UO.Drop(0,UO.GetX(),UO.GetY(),UO.GetZ(),bag)
wait(500)
endif
endif
endsub
sub mining()
...
for j = my-1 to my+2
checkUnloadCommand()
UO.Print("Now Mining In: "+str(mx-i)+" "+str(my-j))
...
endsub
Re: Подскажите команду..
DeleteJournal(keyword) ## Поищи, где-то на форуме эта функция была. Я сейчас не дома так что не помню как та функция выглядит
я как понял она должна удалять из журнала keyword? поиск ничего кроме UO.DeleteJournal() мне не показал
кстати не получеться, он чистит журнал после каждой выкопанной точки и причем очень часто

Re: Подскажите команду..
Нашёл за 15 секунд поиска по форуму:
Code: Select all
Sub DeleteJournal( string1 )
VAR nom = UO.InJournal( string1 )
If nom > 0 Then
UO.SetJournalLine( Nom - 1, 'string replaced' )
DeleteJournal( string1 )
Endif
Re: Подскажите команду..

значит у меня руки не оттуда растут и я как понял вместо стрингс писать мое слово?
запустил, тока не понял, толи все равно не робит, толи не правильно запустил
Re: Подскажите команду..
скажи пожалуйста, почему во время ожидания скрипт бывает крашит клиент, и причем крашит по разному, бывает через 10 минут, а бывает или через час...
Re: Подскажите команду..
Слово вписать нужно сюда:
var keyword = 'unload'
Насчёт крашей наверное потому что старый инжект.
var keyword = 'unload'
Насчёт крашей наверное потому что старый инжект.