Немоглибы вы мне обьяснить в чём ошибка

я никак догнать немогу
И как можно это исправить.
ошибка в этой строчке
Code:
#uo.track("1",str(x),str(y))
start: #Ошибка в этой строке#
mx=UO.GetX()
my=UO.GetY()
Это сам скрипт, таким образом ошибка в скрипте на ходилку gotoxy
Но я когда использовал её до этого всё норм работало, пробовал на ДРВ, правдо не на мининге а на фишинге.
Code:
sub Na4alokopki()
while gotoxy(1178,3165,0)
Mining()
goto(1174,3165,0)
Mining()
gotoxy(1170,3165,0)
Mining()
gotoxy(1166,3165,0)
Mining()
goto(1162,3165,0)
Mining()
gotoxy(1158,3165,0)
Mining()
gotoxy(1154,3165,0)
Mining()
sub GoToHome()
sub GoToMine()
wend
end sub
sub GoToHome()
gotoxy(1168,3165,0)
gotoxy(1168,3186,0)
gotoxy(1158,3186,0)
gotoxy(1158,3194,0)
gotoxy(1155,3194,0)
end sub
sub GoToMine()
gotoxy(1165,3194,0)
gotoxy(1165,3173,0)
gotoxy(1169,3173,0)
gotoxy(1169,3165,0)
gotoxy(1178,3165,0)
end sub
sub Mining()
var x,y,z, n
VAR LastTimer
UO.Set('finddistance','2')
n=0
z=UO.GetZ("self")
for x=-2 to 2
for y=-2 to 2
UO.Print(str(x)+" "+str(y))
Repeat
if UO.InJournal('TORMOZ') then
pause()
endif
UO.DeleteJournal()
UO.Warmode("0")
UO.WaitTargetTile("1341",STR(UO.GetX()+x),STR(UO.GetY()+Y),str(z))
UO.UseType('0x0E85')
LastTimer=UO.Timer()
Repeat
wait(500)
Until UO.InJournal("You put") or UO.InJournal("can't see") or UO.InJournal("heavy") or UO.InJournal("stop") or UO.InJournal("location") or UO.InJournal("no ore") or UO.InJournal("but fail") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("must wait") or UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("where it") OR UO.Timer()>LastTimer+200
if UO.InJournal("You put") then
n=0
else
n=n+1
endif
Until UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("no ore here") or UO.InJournal("location") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("where it") or n>=5
next
next
end sub
sub gotoxy(x,y,prec)
var ld=0,ldc=0
var dx,dy
var mx,my
var ox,oy,mk,k
#uo.print(">")
#uo.track("1",str(x),str(y))
start:
mx=UO.GetX()
my=UO.GetY()
dx=mx-x
if dx<0 then
dx=0-dx
endif
dy=my-y
if dy<0 then
dy=0-dy
endif
if dy>dx then
dx=dy
end if
if dx<=prec then
return
end if
if not ldc then
uo.print(STR(dx))
end if
if dx<3 then
mk=70
else
mk=15
end if
ox=mx
oy=my
for k=1 to mk
mx=UO.GetX()
my=UO.GetY()
if mx<>ox or my<>oy then
goto sdidapl
end if
wait(10)
next
sdidapl:
mx=UO.GetX()
my=UO.GetY()
dx=mx-x
if dx<0 then
dx=0-dx
endif
dy=my-y
if dy<0 then
dy=0-dy
endif
if dy>dx then
dx=dy
end if
if dx<=prec then
return
end if
if ld==dx then
ldc=ldc+1
if ldc>100 then
uo.print("Can not reach location!")
return
end if
else
ld=dx
end if
if mx==x then
if my==y then
return
endif
if my>y then
#UO.Print("UR")
UO.Press(33)
goto start
endif
#UO.Print("DL")
UO.Press(35)
goto start
end if
if mx<x then
if my>y then
#UO.Print("R")
UO.Press(39)
goto start
endif
if my==y then
#UO.Print("DR")
UO.Press(34)
goto start
endif
#UO.Print("D")
UO.Press(40)
goto start
end if
if my<y then
#UO.Print("L")
UO.Press(37)
goto start
endif
if my==y then
#UO.Print("LU")
UO.Press(36)
goto start
endif
#UO.Print("U")
UO.Press(38)
goto start
end sub