скрипт каешно же не мой.
пусть тот чей он не злится.
на форуме такого не видел а у меня на компе более года лежит.
попробуйте посмарите вроде хороший удобный.
Что нужно поменять, чтобы работало?
0. Руннбука: 1-3 рунки в места ловли, 1ая рунка к месту, где ходим. 4ая-дмой
1. Поменять ниже преведенные переменные
2. Скачать последний injection.dll(не обязательно, но не помешает)
Code: VAR Cont1 = '0x40002FCE' ;сейф, где будут карты(id) VAR Runebook = '0x400C617E';руннбука(id) VAR Rune = '0x404AF028' ;рунка к безопасмному месту(id) VAR pole = '0x0DBF' ;удочка(type) VAR foodT = '0x0A99' ;еда(type) VAR walkwait=500 var inWalk=1, inFishing=0 var time, k=0, oldX, oldY, fizl=0, control=8, cel='', glX, glY, whGo=1, whRecall=1.
sub main() DIM xM[4] xM[1] = 1053 xM[2] = 1052 xM[3] = 1065 DIM yM[4] yM[1] = 3501 yM[2] = 3475 yM[3] = 3463 var x, y, z=UO.GetZ("self") DIM text[8] text[1] = 'Tattered treasure' text[2] = 'You pull out a' text[3] = 'You fish a while' text[4] = 'That is too far away' text[5] = 'Try fishing in water' text[6] = 'There are no fish here' text[7] = 'location' UO.Set('finddistance','20') if UO.GetX()<>1053 OR UO.GetY()<>3501 then RunebookRecall(whRecall) endif While True if whGo<3 then whGo=whGo+1 else whGo=1 endif for x=-6 to 6 for y=-6 to 6 inFishing=0 Repeat GoHome(0) UO.DeleteJournal() Careful() ToHide() UO.WaitTargetTile("1341",STR(UO.GetX()+x),STR(UO.GetY()+Y),z) UO.UseType(pole) time=UO.Timer() Repeat wait(500) Until UO.InJournal(text[2]) OR UO.InJournal(text[3]) OR UO.InJournal(text[4]) OR UO.InJournal(text[5]) OR UO.InJournal(text[6]) OR UO.InJournal(text[7]) OR UO.Timer()>time+250 if UO.InJournal(Text[2]) then fizl=0 endif if UO.InJournal(text[3]) then fizl=fizl+1 endif if fizl==control then wait(8000) fizl=0 FastLootCheck() endif if NOT (UO.InJournal(text[1]) OR UO.InJournal(text[3])) then inFishing=1 else if UO.InJournal(text[1]) then Find() endif endif Food() Until inFishing==1 next next if inWalk==1 then Walk(xM[whGo],yM[whGo],'') else if whRecall<3 then whRecall=whRecall+1 else whRecall=1 inWalk=1 endif RunebookRecall(whRecall) endif Wend end sub
sub ToHide() while NOT UO.Hidden() UO.DeleteJournal() UO.Exec('warmode 0') UO.UseSkill('Stealth') wait(2000) time=UO.Timer() repeat wait(500) until UO.InJournal('You have hidden') OR UO.InJournal('seem to') OR UO.InJournal('preoccupied') OR time+200<UO.Timer() Careful() wend end sub
sub Careful() var count=0 UO.IgnoreReset() UO.Ignore('self') UO.FindType('0x0190',-1,1) count=UO.FindCount() UO.FindType('0x0191',-1,1) count=count+UO.FindCount() if count>0 then RuneRecall() if whRecall<3 then whRecall=whRecall+1 inWalk=0 else whRecall=1 inWalk=1 endif GoHome(1) endif end sub
sub Find() UO.Set('finddistance','2') DIM find[2] find[1] = '0x14EB' ;tattered map UO.Set('finddistance','2') UO.Findtype(find[1],-1,1) if UO.FindCount()>0 then UO.MoveItem('finditem',0,'backpack') endif UO.Set('finddistance','20') end sub
sub GoHome(level) DIM razg[2] razg[1] = '0x14EB' ;tattered map if UO.Count(razg[1])>20 OR UO.Weight>UO.STR*4 OR level==1 then RunebookRecall(4) While UO.Count(razg[1])>0 UO.FindType(razg[1],-1,-1) UO.MoveItem('finditem',0,Cont1) FastLootCheck() Wend RunebookRecall(whRecall) endif end sub
sub CheckLag() UO.DeleteJournal() UO.Click('backpack') Repeat wait(200) Until UO.InJournal('backpack') end sub
sub FastLootCheck() UO.DeleteJournal() wait(500) if UO.InJournal("FastLoot") OR UO.InJournal("World save") then CheckLag() endif end sub
sub Food() if k==100 then UO.DeleteJournal() repeat UO.UseType(foodT) wait(500) until UO.InJournal('simply too full') k=1 else k=k+1 endif end sub
sub RuneRecall() oldX=UO.GetX() oldY=UO.GetY() Repeat UO.DeleteJournal() UO.WaitTargetObject(Rune) UO.UseType('0x1F4C') time=UO.Timer() Repeat wait(500) Until oldX<>UO.GetX() OR oldY<>UO.GetY() OR UO.InJournal('The spell fizzles') OR time+200<UO.Timer() Until oldX<>UO.GetX() and oldY<>UO.GetY() end sub
sub RunebookRecall(n) oldX=UO.GetX() oldY=UO.GetY() UO.UseObject(Runebook) FastLootCheck() 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 Walk(x,y,Target) VAR Step, dX, dY, Exit=0, dirW=0, result While Exit<>1 if Target<>"" then cel=Target dX=UO.GetX(Target)-UO.GetX() dY=UO.GetY(Target)-UO.GetY() if UO.GetDistance(Target)<2 then Exit=1 endif else dX=x-UO.GetX() dY=y-UO.GetY() glX=dX glY=dY if dX==0 AND dY==0 then Exit=1 endif endif if Exit==0 then if dX>0 AND dY>0 then dirW=9 ;number 2 endif if dX>0 AND dY<0 then dirW=7 ;number 6 endif if dX<0 AND dY>0 then dirW=3 ;number 4 endif if dX<0 AND dY<0 then dirW=5 ;number 8 endif if dX<>0 AND dY==0 then if dX>0 then dirW=8 ;number 3 else dirW=4 ;number 7 endif endif if dX==0 AND dY<>0 then if dY>0 then dirW=2 ;number 1 else dirW=6 ;number 9 endif endif result=Go(dirW) if result==0 then result=Go(dirW-2) if result==0 then result=Go(dirW+2) endif endif endif Wend endsub
sub Go(dir) var xGo, yGo, check=1, dirStart=UO.GetDir() xGo=UO.GetX() yGo=UO.GetY() DIM key[12] key[0] = 34 ;number 3 key[1] = 40 ;number 2 key[2] = 35 ;number 1 key[3] = 37 ;number 4 key[4] = 36 ;number 7 key[5] = 38 ;number 8 key[6] = 33 ;number 9 key[7] = 39 ;number 6 key[8] = 34 ;number 3 key[9] = 40 ;number 2 key[10] = 35 ;number 1 key[11] = 37 ;number 4 DIM dirS[12] dirS[0] = 2 ;number 3 dirS[1] = 3 ;number 2 dirS[2] = 4 ;number 1 dirS[3] = 5 ;number 4 dirS[4] = 6 ;number 7 dirS[5] = 7 ;number 8 dirS[6] = 0 ;number 9 dirS[7] = 1 ;number 6 dirS[8] = 2 ;number 3 dirS[9] = 3 ;number 2 dirS[10] = 4 ;number 1 dirS[11] = 5 ;number 4
While UO.GetDir()<>dirS[dir] UO.Press(key[dir]) wait(walkwait) if UO.GetDir()==dirStart then CheckLag() endif if (cel<>"" AND UO.GetDistance(cel)<2) OR (glX==0 AND glY==0) then return 1 endif Wend
UO.Press(key[dir]) wait(walkwait) if xGo==UO.GetX() AND yGo==UO.GetY() then CheckLag() UO.Press(key[dir]) wait(walkwait) endif if xGo==UO.GetX() AND yGo==UO.GetY() then return 0 else return 1 endif endsub
|