Yoko
http://forum.yoko.com.ua/

бональная долбежка по камням.
http://forum.yoko.com.ua/viewtopic.php?f=20&t=5758
Page 1 of 1

Author:  Dron D. [ 2006-02-14 21:26:17 ]
Post subject:  бональная долбежка по камням.

накидал тут скриптик для удара по камню, который мы указываем таргетом.
Капаем в этом камне, пока не будет мессаги, что нету больше там нечего. Повторяем капание пока в камне что-то есть.

Code:
sub catorg()
var tshovel='0x0F39'
uo.print('show the stone >>>')
uo.exec('addobject stone')
while uo.targeting()
wait(100)
wend
uo.deletejournal()
while not uo.injournal("No mine") or not uo.injournal("Try mining")
   repeat
        uo.findtype('stone','-1','ground')
        wait(100)
          uo.usetype(tshovel)
    until uo.injournal("You loosen") or uo.injournal("You put")
wend
end sub


Скрипт предлагает мне тыкнуть на камень таргетом, но не находит его сам и моментально пишет тоже самое...
Code:
Where do you want to use the shovel?
Targeting Cancelled

Author:  agem [ 2006-02-14 21:57:59 ]
Post subject: 

Не UO.FindType('stone'...), а UO.WaitTargetObject('stone')!

Author:  Dron D. [ 2006-02-15 12:49:26 ]
Post subject: 

Тот же эффект :(

Author:  GrayLord [ 2006-02-15 13:14:20 ]
Post subject: 

все верно. на сфере, если мы не закончили действие с объектом, и повторно его используем, то первое действие отменяется и все идет сначала, потому и таргет отменяется и кидается новый, пока мы только начали использовать предмет повторно.

Author:  Dron D. [ 2006-02-15 13:17:56 ]
Post subject: 

Все верно. Только как бы ето все на скрипты перевести :?:

Author:  GrayLord [ 2006-02-15 13:18:43 ]
Post subject: 

и вообще, весьма странно все написано... алгоритм скрипта неверен в принципе.
должно быть так:
1)ищем, что копать
2)устанавливаем таргет на найденое
3)используем предмет
4)ждем, пока закончится действие

Author:  Dron D. [ 2006-02-15 13:24:06 ]
Post subject: 

Возможно что не верен алгоритм.
Я только учусь писать скрипты, на основе 5 уроков по написанию скриптов, очень сложно написать правильный скрипт.
Если вам не сложно можете ли вы написать такой скрипт в правильном алгоритме?
1-таргетом указываю на цель копания(камень на земле)
2-капает в етом камне пока не выкапает все.

Author:  GrayLord [ 2006-02-15 14:14:11 ]
Post subject: 

не вдаваясь в подробности, скажу, что такое вот уже ближе к теме. изменения минимальны:
Code:
sub catorg() 
var tshovel='0x0F39'
uo.print('show the stone >>>')
uo.exec('addobject stone')
while uo.targeting()
wait(100)
wend
uo.deletejournal()
 repeat
   repeat
       uo.waittargetobject('stone')
       uo.usetype(tshovel)
       repeat
        wait(100)
       until uo.injournal("You loosen") or uo.injournal("You put")
 until uo.injournal("No mine") or uo.injournal("Try mining")
end sub

просто нужно помнить, что если мы чего-то ждем в журнале, то оно там сразу не появится, и потому лучше сперва подождать, то есть использовать repeat-until, а while-wend подходит лишь в особых случаях, когда использование постусловия приводит к непомерному росту скрипта или увеличению его сложности.

Author:  Dron D. [ 2006-02-15 15:24:54 ]
Post subject: 

Code:
Where do you want to use the shovel? 
Targeting Cancelled
:twisted:

Author:  GrayLord [ 2006-02-15 15:59:49 ]
Post subject: 

угу. так и есть. забыл очистку журнала перенести:
Code:
sub catorg() 
var tshovel='0x0F39'
uo.print('show the stone >>>')
uo.exec('addobject stone')
while uo.targeting()
wait(100)
wend
 repeat
   repeat
       uo.deletejournal()
       uo.waittargetobject('stone')
       uo.usetype(tshovel)
       repeat
        wait(100)
       until uo.injournal("You loosen") or uo.injournal("You put")
 until uo.injournal("No mine") or uo.injournal("Try mining")
end sub


Author:  Dron D. [ 2006-02-15 16:15:27 ]
Post subject: 

:lol:
Code:
show the stone >>>
What is stone?
Object updated: stone=0x0000
Where do you want to use the prison shovel?
Targeting Cancelled.
:twisted: :twisted: :twisted:

Author:  Dron D. [ 2006-02-15 16:25:57 ]
Post subject: 

Вобщем давай по другому.

Code:
sub catorg()
while not uo.dead()
uo.usetype('0x0F39')
wait(2500)
uo.press(113)
wait(7500)
wend
end sub

Вот впринципе тоже самое, только желательно, чтобы он press`ил 113 кнопку после сообщения You put.

Author:  GrayLord [ 2006-02-15 18:32:48 ]
Post subject: 

вобщем так, такими темпами мы далеко не уедем.
видимо, камень твой в статике и его надо при помоще waittargettile обрабатывать:
Code:
sub catorg() 
var tshovel='0x0F39'
 repeat
   repeat
       uo.deletejournal()
       uo.exec('waittargettile lasttile')       
       uo.usetype(tshovel)
       repeat
        wait(100)
       until uo.injournal("You loosen") or uo.injournal("You put")
 until uo.injournal("No mine") or uo.injournal("Try mining")
end sub


смысл вот в чем. биндишь в инжекте запуск этого скрипта на кнопочку какую-нибудь. далее, сперва копаешь руками. один раз. как только первый круг отработает с твоей помощью, дальше запускаешь скрипт и он докапывает все сам.

Author:  agem [ 2006-02-15 19:00:07 ]
Post subject: 

Quote:
Object updated: stone=0x0000


Нет там, куда ты кликаешь, никакого объекта.

Author:  Dron D. [ 2006-02-15 19:00:24 ]
Post subject: 

да ты прав етож все статика... нету айди, тайпов... вобщем твоим скриптом достаточно указать цель, т.е. тайл становится последней целью и все работает. спс.

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/