Давно не играл. Вернулся на дрв, гп по 0. Решил поставить на макрос чара поднять гп... Да тут мне задачка: скрипт перестал улетать при появлении других чаров... Когда выкапывает элика то убегает, а при появлении пк или другого чар - нет, а раньше улетал...
Может на ДРВ что то поменялось...
Вот и сам скрипт:
Code: sub Maning() var mx, my, mz, i, j, jor, ser, noto dim runes[2] runes[0]=88 runes[1]=94 runes[2]=1025 var cavenumber=0 var maxcaves=3
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
uo.print('!!????-?????????!! ') uo.exec('addobject runeHome') while uo.targeting() wait(100) wend
na4alo: 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("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Old Copper") and not UO.InJournal("Dull Copper") and not UO.InJournal("Silver") and not UO.InJournal("Gold") and not UO.InJournal("Bronze") 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) for jor = 0 to 99 ser = uo.journalserial(jor) noto = uo.getnotoriety(ser) if noto <> 0 and noto <> 2 and not uo.injournal("loosen") then cavenumber=cavenumber+1 if cavenumber==maxcaves then cavenumber=0 endif Save() loot() wait(3000) goto reccal endif next wend if uo.weight > 650 then ; ???????????? ??? ??? ??????? ????? ? ????? goto end endif wend UO.DeleteJournal() next next goto na4alo end: if uo.waiting() then uo.canceltarget() endif uo.exec("recall Runebook 21") ; ????? ( ? ??????? ???? 1 ) wait(10000) loot() wait(3000) Reagents() wait(3000) reccal: uo.deletejournal() if uo.waiting() then uo.canceltarget() endif uo.exec("recall Runebook " + Str(runes[cavenumber])) mx = UO.GetX("self") my = UO.GetY("self") wait(10000) if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then goto reccal endif goto na4alo end sub
sub loot() ; ?????????? ???? ? ?????? if uo.waiting() then uo.canceltarget() endif VAR a,Exit VAR UnloadCont='0x4041b0d1';--------???? ??????? ???? ?????? ???? DIM Ore[13] Ore[0]=0x19B9 ; 4 and more ore Ore[1]=0x19B7 ; 1 ore Ore[2]=0x19BA ; 2 ore Ore[3]=0x19B8 ; 3 ore Ore[4]=0x0F10 Ore[5]=0x0F0F Ore[6]=0x0F16 Ore[7]=0x0F18 Ore[8]=0x0F15 Ore[9]=0x0F26 Ore[10]=0x0F11 Ore[11]=0x0EED Ore[12]=0x0F0E UO.SetReceivingContainer(UnloadCont) wait(500) For a=0 to 10 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 uo.UseType('0x0F0E','0x0631') wait(100) reccal: uo.deletejournal() if uo.waiting() then uo.canceltarget() endif mx = UO.GetX("self") my = UO.GetY("self") UO.DeleteJournal() uo.waittargetobject('runeHome') ; ????? wait(500) uo.cast('Recall') wait(2000) Screen() pwav() wait(2500) if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then goto reccal endif wait(2000) Reagents() end sub
sub time() var hh,mm,ss,hms,t=str(UO.Time()) if len(t)<=2 then hh="0" mm="0" ss=t endif if len(t)==3 then hh="0" mm=left(t,len(t)-2) ss=right(t,len(t)-1) endif if len(t)==4 then hh="0" mm=left(t,len(t)-2) ss=right(t,len(t)-2) endif if len(t)==5 then hh=left(t,len(t)-4) hms=left(t,len(t)-2) mm=right(hms,len(hms)-1) ss=right(t,len(t)-3) endif if len(t)==6 then hh=left(t,len(t)-4) hms=left(t,len(t)-2) mm=right(hms,len(hms)-2) ss=right(t,len(t)-4) endif return hh+":"+mm+":"+ss end sub
sub Hide() repeat while not UO.Hidden() wait(100) UO.Warmode("1") uo.print("????????...") UO.UseSkill("Stealth") wait(4100) wend wait(100) until false end sub
sub Reagents() uo.exec("recall Runebook 2") UO.UnsetReceivingContainer() VAR StoreRegCont=0x4041b0d1;-------???? ?????????? ? ??????? ? ????? ??? ????? ???? ? ?????? VAR CharRegBag='backpack' VAR CountReg=10 VAR WaitTime=600 VAR MainSafe=0x401B1D95;---------???? ?????????? ??? ????
UO.UseObject(MainSafe) UO.UseObject(StoreRegCont) UO.SetReceivingContainer('backpack') wait(WaitTime) if UO.BM<CountReg then UO.FindType('0x0F7B','-1',StoreRegCont) ; BM UO.Grab(STR((CountReg-UO.BM)),'finditem') wait(WaitTime) endif if UO.BP<CountReg then UO.FindType('0x0F7A','-1',StoreRegCont) ; BP UO.Grab(STR(CountReg-UO.BP),'finditem') wait(WaitTime) endif if UO.MR<CountReg then UO.FindType('0x0F86','-1',StoreRegCont) ; MR UO.Grab(STR(CountReg-UO.MR),'finditem') wait(WaitTime) endif UO.FindType('0x0F0E','0x0631','backpack') ; invisible While UO.GetQuantity('finditem')<2 UO.FindType('0x0F0E','0x0631',StoreRegCont) wait(200) UO.Grab('1','finditem') wait(WaitTime) wend
UO.FindType('0x1F4C','0x000',StoreRegCont) wait(WaitTime) UO.Grab('1','finditem')
uo.exec("recall Runebook 1") UO.UnsetReceivingContainer() end: end sub
sub Screen() ;while not uo.dead() ;wait(50) ;wend uo.snap() end sub
sub pwav() uo.playwav("C:\1.wav") end sub
sub Reconnect() var ReconnectTime,rFlag ReconnectTime='0' rFlag=1 repeat while (uo.ObjAtLayer('Bpack')=='') if rFlag then ReconnectTime=MakeTime() rFlag=0 end if wait(20000) uo.Say('') wait(3000) uo.Say('') wait(3000) uo.Say('') wait(3000) uo.LDblClick(357,164) uo.LClick(616,459) wait(3000) wend wait(3000) if (rFlag==0) and (ReconnectTime<>'0') then uo.TextOpen() uo.TextPrint('Disconnected & Reconnected @ '+ReconnectTime) rFlag=1 ReconnectTime='0' end if until false end sub
|