uo.private***
Posted: 2006-02-03 00:18:10
Кто нибудь знает как работают uo.privategettile() и uo.privatedig(), и лист всех прайват функций??
Фишка в чем что тайл на котором ты стоишь может быть статикой а может быть тайлом мапы...
+ колво ститики подтобой может быть больше 1...
Дальше если ты хочешь узнать весь список тайлов то есть такая за мечательная команда...
uo.privategettile(x, y, -1, n1, n2)
где n1, n2 на чало и конец диапазона номеров как статичных объектов так и мап...
Как будет выгледить твое чудо...
Sub LogTile()
var x, y
While not uo.Dead()
wait(100)
if x == uo.GetX() and y == uo.GetY() then
x = uo.GetX()
y = uo.GetY()
uo.textprint('Tile Cord: '+Str(x)+' '+Str(y))
For i = 1 to 9000
if uo.privategettile(x, y, -1, i, i) then
uo.textprint(' ID: '+Str(i))
endif
next
endif
wend
end sub
Так вот теперь минусы этой ерунды... номера статик тайла и мап тайла могут совпать... и он будет учтен только 2 раза... можно сделать примочку но она нпфиг не нужна (ввиду того что приваттайл это счетчик он подсчитывает колво совпадений из диапозона)...
Прижелании диапозон пробежки 1..9000 можно сократить так как на практике требуется не большое его промежуток (1..9000 это как раз те самые ИД наших тайлов... мы просто пере бираем и смотрим сколько скажет нам счетчик если больше или равно 1 то пишем в лог)
Я это читал. Хотел более подробного. ЧТо например за циферка "-1"??Volku$$ wrote:uo.privategettile(x, y, -1, n1, n2)
Code: Select all
sub fishing()
dim coords[20]
var x, y
var coord_num=0, coordnum=0
var mintile = '6039', maxtile='6044'
var fishingpole='0x0DBF'
for x = -8 to 8
for y=-8 to 8
if not uo.dead() then
uo.deletejournal()
uo.exec("privatedig "+str(x)+" "+str(y)+" "+fishingpole+" "+mintile+" "+maxtile)
repeat
wait(100)
if uo.injournal('Pause') then
uo.deletejournal()
repeat
wait(100)
until uo.injournal('Continue')
endif
until uo.injournal('No cave floor there') or uo.injournal('You stop fishing.') or uo.injournal("can't")
if not uo.injournal('No cave floor there') then
coords[coord_num]=str(x)+" "+str(y)
coord_num=coord_num+1
endif
endif
if coord_num>20 then
x=8
y=8
endif
next
next
while not uo.dead()
coordnum=0
while coordnum<coord_num and (not uo.dead())
uo.deletejournal()
uo.exec("privatedig "+coords[coordnum]+" "+fishingpole+" "+mintile+" "+maxtile)
repeat
wait(100)
if uo.injournal('Pause') then
uo.deletejournal()
repeat
wait(100)
until uo.injournal('Continue')
endif
until uo.injournal('No cave floor there') or uo.injournal('You stop fishing.') or uo.injournal("can't")
coordnum=coordnum+1
wend
wend
end sub
Ну так надо оживлять информацию...Destruction wrote:Ах, ну да... Этот откат, ну да и ладно.
shnur wrote:Ну так надо оживлять информацию...Destruction wrote:Ах, ну да... Этот откат, ну да и ладно.
Уже делал. Но хотел узнать вдруг кто знает описание и работу этих функций, ибо там этого не написано.shnur wrote:privategettile
privateminework
privateminetile
privateprepare
privatedig
вот что я нашёл в Injection.dll.
Хм...ну первую более менее понял, последнюю тоже, по примеру из скрипта...а вот 3 остальных?? Неужели тайна для всех?? Метод тыка глупо применять когда не знаешь что ищешь...Grin wrote:Первую тебе описали сног доголовы. Последня описана в ддл с переменными которые надо вводить. Остольные 3 работают только в скриптовом модуле и то хз. Метод тыка всегда был самым совершеным методом и остается посейдень! ожидание реакции на известное воздествие!
Destruction wrote:Уже писал список.
Сейчас в уо не связан, что делает privatedig не помню, вот тебе скрипт с использованием этой функции (найден яндексом).Code: Select all
sub fishing()
dim coords[20]
var x, y
var coord_num=0, coordnum=0
var mintile = '6039', maxtile='6044'
var fishingpole='0x0DBF'
for x = -8 to 8
for y=-8 to 8
if not uo.dead() then
uo.deletejournal()
uo.exec("privatedig "+str(x)+" "+str(y)+" "+fishingpole+" "+mintile+" "+maxtile)
repeat
wait(100)
if uo.injournal('Pause') then
uo.deletejournal()
repeat
wait(100)
until uo.injournal('Continue')
endif
until uo.injournal('No cave floor there') or uo.injournal('You stop fishing.') or uo.injournal("can't")
if not uo.injournal('No cave floor there') then
coords[coord_num]=str(x)+" "+str(y)
coord_num=coord_num+1
endif
endif
if coord_num>20 then
x=8
y=8
endif
next
next
while not uo.dead()
coordnum=0
while coordnum<coord_num and (not uo.dead())
uo.deletejournal()
uo.exec("privatedig "+coords[coordnum]+" "+fishingpole+" "+mintile+" "+maxtile)
repeat
wait(100)
if uo.injournal('Pause') then
uo.deletejournal()
repeat
wait(100)
until uo.injournal('Continue')
endif
until uo.injournal('No cave floor there') or uo.injournal('You stop fishing.') or uo.injournal("can't")
coordnum=coordnum+1
wend
wend
end sub
shnur wrote:Хм...ну первую более менее понял, последнюю тоже, по примеру из скрипта...а вот 3 остальных?? Неужели тайна для всех?? Метод тыка глупо применять когда не знаешь что ищешь...Grin wrote:Первую тебе описали сног доголовы. Последня описана в ддл с переменными которые надо вводить. Остольные 3 работают только в скриптовом модуле и то хз. Метод тыка всегда был самым совершеным методом и остается посейдень! ожидание реакции на известное воздествие!
Code: Select all
uo.exec('privatedig ' + str(x) + ' ' + str(y) + ' ' + objtype + ' ' + str(begintile) + ' ' + str(endtile))