скрипт каешно же не мой.
пусть тот чей он не злится.
на форуме такого не видел а у меня на компе более года лежит.
попробуйте посмарите вроде хороший удобный.
Что нужно поменять, чтобы работало?
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