вопрос наверно в первую очередь к грину, ибо скрипт его
антимакрос для ФВ
sub OneClick()
dim reindex[8]
reindex[0] = 11
reindex[1] = 12
reindex[2] = 13
reindex[3] = 10
reindex[4] = 16
reindex[5] = 14
reindex[6] = 17
reindex[7] = 15
var GumpID = 0
var ButtonID = 0
var ButtonText
var i = 18
if uo.LastGump('text', 4) <> "0" then
i = 19
end if
GumpID = val(Mid(uo.LastGump('command', i), 16, 4))
ButtonID = reindex[GumpID-2225]
ButtonText = uo.LastGump('command', ButtonID)
uo.LClick(Val(Mid(ButtonText, 7, 3)), Val(Mid(ButtonText, 11, 3)))
while not uo.LastGump('replyed')
wait(100)
wend
end sub
sub AntiMacro()
while not uo.Dead()
if not uo.LastGump('replyed') then
if uo.LastGump('text', 0) == 'Antimacros System' then
OneClick()
end if
endif
wait(500)
wend
end sub
вот.... какда вылезает сам гамп антимакроса то скрипт ругается на 21 строчку
и еще сразу подскажите плиз сразу почему у меня в простеньком скрипте на мининг постоянно через несколько минут после страта ошибка вылезает....
#########################################################################
sub maining()
var mx, my, mz, i, j
UO.print('Âûáåðè Êèðêó')
UO.exec('addobject kirka')
while uo.targeting()
wait(100)
wend
UO.print('Âûáåðèòå ðóíêó')
uo.exec('addobject rune')
while uo.targeting()
wait(100)
wend
na4alo:
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
for i = mx-2 to mx+2
for j = my-2 to my+2
hidding()
UO.Print("Êîïàåì â êîîðäèíàòàõ: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore")
UO.DeleteJournal()
if uo.waiting() then
uo.canceltarget()
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Useobject("kirka")
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock")
wait (1000)
if uo.weight>500 then
recal()
endif
if uo.injournal("You see:") then
if uo.waiting() then
uo.canceltarget()
endif
recal()
endif
hidding()
wend
wend
UO.DeleteJournal()
next
next
goto na4alo
end sub
###########################################################################
sub hidding()
while not uo.Hidden()
uo.WarMode("0")
uo.print('Ïðÿ÷åìñÿ')
uo.UseSkill("Hiding")
wait(3500)
wend
end sub
###########################################################################
sub recal()
if uo.waiting() then
uo.canceltarget()
endif
uo.print ("Êàñòóåì ðåêîëë(ñüåáûâàåìñÿ)")
uo.waittargetobject('rune')
uo.cast('Recall')
wait(3500)
uo.exec("terminate all")
end sub
#############################################################################
sub maining()
var mx, my, mz, i, j
uo.ignore( 'self' )
UO.print('Âûáåðè Êèðêó')
UO.exec('addobject kirka')
while uo.targeting()
wait(100)
wend
UO.print('Âûáåðèòå ðóíêó')
uo.exec('addobject rune')
while uo.targeting()
wait(100)
wend
na4alo:
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
for i = mx-2 to mx+2
for j = my-2 to my+2
hidding()
UO.Print("Êîïàåì â êîîðäèíàòàõ: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore")
UO.DeleteJournal()
if uo.waiting() then
uo.canceltarget()
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Useobject("kirka")
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock")
wait (1000)
if uo.weight>500 then
recal()
endif
uo.findman( -1 )
if uo.findcount() then
recall() ; рекол
endif
hidding()
wend
wend
UO.DeleteJournal()
next
next
goto na4alo
end sub
sub maining()
var mx, my, mz, i, j
uo.ignore( 'self' )
UO.print('Âûáåðè Êèðêó')
UO.exec('addobject kirka')
while uo.targeting()
wait(100)
wend
UO.print('Âûáåðèòå ðóíêó')
uo.exec('addobject rune')
while uo.targeting()
wait(100)
wend
na4alo:
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
for i = mx-2 to mx+2
for j = my-2 to my+2
hidding()
UO.Print("Êîïàåì â êîîðäèíàòàõ: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore")
UO.DeleteJournal()
if uo.waiting() then
uo.canceltarget()
endif
uo.findman( -1 )
if uo.findcount() then
recal()
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Useobject("kirka")
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock")
wait (1000)
if uo.weight>500 then
recal()
endif
hidding()
wend
wend
UO.DeleteJournal()
next
next
goto na4alo
end sub
да это то я знаю... просто какада во время макроса на мининг сразабатывает антимакрос то пока дважды не наждмеш потом на кирку скрипт не продолжжается... вот я и хочу, что бы в слычае простоя, допустим 30 сек тыкался обжект
deljournal( "капнуло|не капнуло" )
uo.waittargettile( ... )
uo.useobject( ... )
timer = 0
repeat
wait( 100 )
timer = timer + 1
until uo.injournal( "капнуло|не капнуло" ) or timer >= 300
if not uo.injournal( "капнуло|не капнуло" ) then
; стало быть цикл слетел по таймауту
endif
В данном случае я привожу стандартную для мининга конструкцию, что у вас там хз, ибо лень читать топик
Вообще - есть смысл записывать таймстамп отвеченного антимакроса и в таком цикле проверять - не изменился ли таймстамп, тогда простоя в 30 сек не будет, а будет всё сразу быстренько и аккуратненько..
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.
Telegram: @tatikom