Проблема с возобнавлением скрипта после паузы
Posted: 2009-01-23 10:57:59
Code: Select all
VAR numberRUNE = 4
VAR time
sub maning()
#BETEP™#
var mx, my, mz, i, j, jor, ser, noto
Uo.exec("set norbcheck 1"); äëÿ ðåêîëà
uo.exec("set norbcalc 1"); òîæå
uo.print('!!Âûáåðè Ëîïàòó!! ')
uo.exec('addobject Shovel')
while uo.targeting()
wait(100)
wend
uo.print('!!Âûáåðè Ðóíáóê!! ')
uo.exec('addobject Runebook')
while uo.targeting()
wait(100)
wend
numberRune = 4
na4alo:
if numberRune == 6 then
numberRune = 4
end if
teleport(numberRune,'Runebook')
wait(3000)
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
UO.DeleteJournal()
for i = mx-4 to mx+4
for j = my -4 to my+4
while not UO.Hidden()
UO.Warmode("0")
uo.print("Ïðÿ÷åìñÿ...")
UO.UseSkill("Hiding")
wait(4000)
wend
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("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("Shovel")
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 (500)
if uo.injournal("heavy") or uo.dead() then
pwavw()
Pause()
endif
for jor = 0 to 9
ser = uo.journalserial(jor)
noto = uo.getnotoriety(ser)
if noto <> 1 and noto <> 0 and not uo.injournal("elemental") then
if uo.waiting() then
uo.canceltarget()
endif
UO.UseType('0x0F0E','0x0631') ; inviz potion
UO.Exec('warmode 0')
wait(1500)
pwavw()
Save()
pwavw()
pwavw()
pwavw()
while not UO.Hidden()
UO.Warmode("0")
uo.print("Ïðÿ÷åìñÿ...")
UO.UseSkill("Hiding")
wait(4000)
wend
wait(120000) ; âðåìÿ â ñåêóíäàõ ïðè îæèäàíèè ïîêà óéäåò ÏÊ
loot()
wait(3000)
goto reccal
endif
next
wend
if uo.weight > 625 then ; Ìàêñèìàëüíûé âåñ ïðè êîòîðîì äîìîé ñ ðóäîé
goto end
endif
wend
UO.DeleteJournal()
next
next
numberRune = NumberRune + 1
goto na4alo
end:
if uo.waiting() then
uo.canceltarget()
endif
teleport(1, 'Runebook') ; äîìîé ( â ðóíáóêå ñëîò 1 )
wait(10000)
loot()
wait(3000)
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
teleport(numberRune, 'Runebook') ; â øàõòó
goto na4alo
end sub
sub loot() ; ïåðåêëàäêà ðóäû â ñóíäóê
if uo.waiting() then
uo.canceltarget()
endif
VAR a,Exit
VAR UnloadCont='0x404CEEA5' ; ÀÉÄÈ ñóíäóêà äëÿ ðóäû
DIM Ore[5]
Ore[0]=0x19B9 ; 4 and more ore
Ore[1]=0x19B7 ; 1 ore
Ore[2]=0x19BA ; 2 ore
Ore[3]=0x19B8 ; 3 ore
UO.SetReceivingContainer(UnloadCont)
wait(500)
For a=0 to 3
Exit=0
repeat
UO.FindType(Ore[a])
if UO.GetQuantity('finditem')>0 then
UO.Grab('0','finditem')
wait(1500)
Else
Exit=1
endif
until Exit==1
Next
UO.UnSetReceivingContainer()
end sub
sub Save() ; Ðåêîëë îò ÏÊ ïðè èõ ïîÿâëåíèè (â ïàêå ðóíêà â áåçîïàñíîå ìåñòî è ðåãè)
var mx, my
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
mx = UO.GetX("self")
my = UO.GetY("self")
UO.DeleteJournal()
UO.FindType('0x1F14',-1,'my')
wait(1000)
UO.Cast('Recall','finditem')
wait(6500)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
end sub
sub pwav() ; çâóê ïðè âûêàïûâàíèè ÝËÅÌÅÍÒÀËÀ
uo.playwav("C:\alert.wav")
endsub
sub pwavw(); çâóê ïðè ïîÿâëåíèè ÏÊ
uo.playwav("C:\groz.wav")
endsub
sub Pause() ; Ïàóçà ñêðèïòà åñëè âûêîïàëè Ýëåìà (ïðîäîëæèòü ñêàçàâ GO )
UO.DeleteJournal()
REPEAT
WAIT(3000)
UO.Print("!!!ÑÊÐÈÏÒ ÍÀ ÏÀÓÇÅ!!!!")
pwav()
UNTIL UO.InJournal('GO')
UO.Print("!!!ÑÊÐÈÏÒ ÏÐÎÄÎËÆÅÍ!!!!")
endif
end sub
sub teleport(n,book)
uo.print("recall rune number...")
uo.print(n)
var oldX=UO.GetX()
var oldY=UO.GetY()
NoTarget()
UO.UseObject(book)
FastLootCheck()
CheckLag()
UO.LClick(135, n*15+55)
time=UO.Timer()
Repeat
wait(500)
Until oldX<>UO.GetX() OR oldY<>UO.GetY() OR time+200<UO.Timer()
end sub
sub NoTarget()
if UO.Waiting() then
UO.CancelTarget()
endif
end sub
sub FastLootCheck()
UO.DeleteJournal()
wait(600)
if UO.InJournal("FastLoot") OR UO.InJournal("World save") then
CheckLag()
endif
end sub
sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(500)
until UO.InJournal('backpack')
end sub
Выкапываю элема, скрипт ставится на паузу, пишу GO, пауза вроде отменяется, но скрипт не возобнавляется =( Буду оч благодарен если кто-нибудь поможет разобраться ....[/code]