Помощь - Поиск - Пользователи - Календарь
Полная версия: Mining
UoKit.com Форумы > Ultima Online > Программы для Ultima Online > Injection
Geoleo
Ребята привет! Помогите пожалуйста исправить ошибку, заранее очень признателен!
При запуске скрипта "start" выдает сообщение Line 111: parse error
Вот эта линия:
uo.findtype('0x0E86','-1','0x4001D78F') # добавляем ID ящика с кирками
Код
sub start() 
    check()
    uo.cast('Recall',0x4006ABDA) # руда 1
    wait(2000)
    mine(1339,2558,499,0) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AA97) # руда 2
    wait(2000)
    mine(0,2571,316,30) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB76) # руда 3
    wait(2000)
    mine(0,2572,325,38) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006ABC9) # руда 4
    wait(2000)
    mine(0,2592,314,31) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB61) # руда 5
    wait(2000)
    mine(0,2595,325,21) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB12) # руда 6
    wait(2000)
    mine(0,2586,258,23) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB06) # руда 7
    wait(2000)
    mine(0,2578,285,31) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB7F) # руда 8
    wait(2000)
    mine(0,2559,275,16) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006ABDF) # руда 9
    wait(2000)
    mine(0,2569,369,31) # добовляем координаты места копания
    wait(500)
    check()
    dom()
    check()
    uo.cast('Recall',0x4006AB8A) # руда 10
    wait(2000)
    mine(0,2453,398,16) # добовляем координаты места копания
    wait(500)
    check()
    dom()
end sub
Sub mine(t,x,y,z)
    uo.deletejournal()
    repeat
        wait(1500)
        uo.waittargettile(str(t),str(x),str(y),str(z))
        uo.usetype('0x0E86')          # тип кирки
    until uo.injournal("cliloc# 0xAD00") or uo.injournal("cliloc# 0xA20D") or uo.injournal("cliloc# 0xA2DE") or uo.injournal("cliloc#
    0x6B31")
    uo.Canceltarget()
end sub
sub dom()
    uo.cast('Recall',0x4006ABF6) # добавляем ID рунки на порог дома
    wait(2000)
    repeat
        UO.findtype('0x19B9','-1','my') # тип кучки руды
        wait(600)
        UO.waittargetobject('0x400B7214') # добавляем ID плавильни
        wait(600)
        UO.useobject('finditem')
        wait(600)
        if uo.injournal("cliloc# 0xA2DE") then
            uo.deletejournal()
            uo.cast('Recall',0x4006ABF6) # ID рунки на порог дома
            wait(2000)
            goto a
        else
            a:
            UO.useobject('finditem')
        until uo.findcount() == 0
        wait(600)
    end if
    repeat
        UO.findtype('0x1bf2','-1','2') # тип слитков
        uo.moveitem('finditem',-1,'0x4001D90F') # добавляем ID ящика для слитков
        wait(700)
    until uo.findcount() == 0
    while UO.Count(''0x0E86')<3
        uo.findtype('0x0E86','-1','0x4001D78F') # добавляем ID ящика с кирками
        UO.moveitem('finditem','0','0x4001C403') #добавляем ID рюкзака
        wait (700)
    wend
end sub
sub check()
    while Uo.Mana <10
        if UO.Mana <10 then
            uo.Canceltarget()
            UO.UseSkill("Meditation")
            wait(7000)
        end if
    wend
end sub
Geoleo
Уже разобрался сам ошибка была в данной строке while UO.Count(''0x0E86')<3
Тему можно закрывать.
Geoleo
Цитата(Geoleo @ 20.8.2009, 17:26) *

Уже разобрался сам ошибка была в данной строке while UO.Count(''0x0E86')<3
Тему можно закрывать.

Беру свои слова обратно, тему закрывать не нужно rolleyes.gif
Появилась новая проблема. Заключаеться в следующем: после того как персонаж облетел все места копания, после последнего места копания он летит в дом плавит руду затем кладет ее в сундук и скрипт останавливается. Чего тут не хватает, чтобы он работал без остановок ?
Пожалуйста помогите!
Пуссалей
sub название()

while 1 # цикл будет работать пока 1 равна 1 smile.gif А, как многим, надеюсь, известно, единица все будет равна единице smile.gif

тут все функции, которые необходимо повторять smile.gif

wend

end sub
Don Juan de Marco
ohmy.gif ohmy.gif ohmy.gif Елы-палы, один из моих первых скриптов. Правда, кто-то его подредактировал. Зачем-то убрали цикл, влепили goto. Добавили отступы... респект )))
Razario
Блин я тут тоже с ошибкой впарился это только у меня линии разные всегда, а значит и весь скрипт корявый, но может тут мне ктонить поможет или подскажет где что подправить. А может кому и пригодится smile.gif

#??? ?????? ?????? ???? "??????" ?????? NumLock
Var Pickaxe=0x0E85 # Pichaxe
Var Ore=0x19B9
Var Ingot=0x1BF2
Var Iron=0x0000
Var MoveDelay=150 # ?????????? ????? ??????
Var MoveNumber=1 # ?????????? ????? ??? ????? ??????????
Var Ep=0.172 # 172???????? ?????? ???? ???????? ??? ??????????? ???????????. ???? ?? ???? ??????????? ??????? ? ??????? ??????????? - ?????????. 0.172 - ????????????????.
Var FileName='C:\Games\Uo\inj5\Точки.txt' # ? ?????? ?????? ????? ???? ??????

Sub Main()
UO.SetGlobal('process','no')
repeat
if UO.GetGlobal('process')=='no' then
UO.DeleteJournal()
UO.Exec('exec Lumb')
endIf
Wait(3000)
until (1==0)
EndSub

Sub Lumb()
Var Tl,T,X,Y,Z,srl
var wei
UO.SetGlobal('process','yes')
Var F=File(FileName)
F.Open()
Beg:

DeleteJournal('no mine')
Tl=safecall F.Readln()
Tl=Trim(Tl)
If Tl=='File read error' Then
GoTo Ext
EndIf
T=GetNumb(Tl,0)
X=GetNumb(Tl,1)
Y=GetNumb(Tl,2)
Z=GetNumb(Tl,3)
UO.Print('next mine')
UO.Print('Tile '+Tl)
GoToTile(X,Y,1,False)
Repeat
uo.DeleteJournal()
UO.WaitTargetTile(Str(T),Str(X),Str(Y),Str(Z))
While uo.Waiting()

Emil()
If Uo.life < 1 Then
Ress()
wait(5000)
If Uo.life < 1 Then
Ress()
wait(50000)
endif
GoToTile(X,Y,1,false)
UO.WaitTargetTile(Str(T),Str(X),Str(Y),Str(Z))
wait(2000)
Uo.usetype('Kirka')
Uo.waittargetself()
endif


WEND
repeat
Wait(1000)
if Uo.life < 1 then
Ress()
wait(5000)
endif
If UO.InJournal("You got hit") or UO.InJournal("attackaing you") then
alarm()
if Uo.life > 1 then
return()
endif
if Uo.life < 1 then
Ress()
wait(5000)
endif
If Uo.life < 1 Then
Ress()
wait(5000)
endif
wait(1000)
GoToTile(X,Y,1,false)
UO.WaitTargetTile(Str(T),Str(X),Str(Y),Str(Z))
Emil()
UO.DeleteJournal()
endif
If UO.InJournal("far") or UO.InJournal("away") then
uo.usetype('0x0E85')
uo.waittargetself()
uo.deletejournal()
endif
#if uo.count(Ore)>170 then
wei = ( UO.Str * 3 ) - 20
if UO.Weight > wei then
Drop()
wait(1000)
GoToTile(X,Y,1,false)
wait(1000)
UO.WaitTargetTile(Str(T),Str(X),Str(Y),Str(Z))
UO.UseObject(UO.ObjAtLayer('Rhand'))
endif
Until UO.InJournal("There is no ore here to mine.") or UO.InJournal("There is no ore here to mine")
Until UO.InJournal("There is no ore here to mine.") or UO.InJournal("There is no ore here to mine")
If UO.InJournal("There is no ore here to mine.") or UO.InJournal("There is no ore here to mine") then
Goto Beg
EndIf
Ext:
F.Close()
UO.SetGlobal('process','no')
EndSub


###############################################################
#??????????? ??? ???? ?)
###############################################################
sub Exist()
#############Iron
If UO.Count(0x1BF2, 0x0000) > 0 Then
ProDrop(0x1BF2, 0x0000)
EndIF
############Rasty
If UO.Count(0x1BF2,0x0750) > 0 Then
ProDrop(0x1BF2,0x0750)
EndIF
############Bronze
If UO.Count(0x1BF2, 0x0488) > 0 Then
ProDrop(0x1BF2, 0x0488)
EndIF
############Old Copper
If UO.Count(0x1BF2, 0x0949) > 0 Then
ProDrop(0x1BF2, 0x0949)
EndIF
############Dull Copper
If UO.Count(0x1BF2, 0x060A) > 0 Then
ProDrop(0x1BF2, 0x060A)
EndIF
############Copper
If UO.Count(0x1BF2, 0x0641) > 0 Then
ProDrop(0x1BF2, 0x0641)
EndIF
############Pirit
If UO.Count(0x1BF2, 0x09EE) > 0 Then
ProDrop(0x1BF2, 0x09EE)
EndIF
############Silver
If UO.Count(0x1BF8, 0x0482) > 0 Then
ProDrop(0x1BF8, 0x0482)
EndIF
############Gold
If UO.Count(0x1BEC, 0x0000) > 0 Then
ProDrop(0x1BEC, 0x0000)
EndIF
############Shadow
If UO.Count(0x1BF2, 0x0770) > 0 Then
ProDrop(0x1BF2, 0x0770)
EndIF
############Verit
If UO.Count(0x1BF2, 0x0947) > 0 Then
ProDrop(0x1BF2, 0x0947)
EndIF
############Agapit
If UO.Count(0x1BF2, 0x0400) > 0 Then
ProDrop(0x1BF2, 0x0400)
EndIF
############Blood
If UO.Count(0x1BF2, 0x04C2) > 0 Then
ProDrop(0x1BF2, 0x04C2)
EndIF
############Azurit
If UO.Count(0x1BF2, 0x04DF) > 0 Then
ProDrop(0x1BF2, 0x04DF)
EndIF
############Mithril
If UO.Count(0x1BF2, 0x052D) > 0 Then
ProDrop(0x1BF2, 0x052D)
EndIF
############Valorite
If UO.Count(0x1BF2, 0x0515) > 0 Then
ProDrop(0x1BF2, 0x0515)
EndIF
############Winter
If UO.Count(0x1BF2, 0x0481) > 0 Then
ProDrop(0x1BF2, 0x0481)
EndIF
############Black Rock Ore
If UO.Count(0x19B9,0x0455) > 0 Then
ProDrop(0x19B9,0x0455)
EndIF
end sub
###############################################################
#????? ????
###############################################################

###############################################################
#????? ?????? ?????
###############################################################
###############################################################
#????? ???? 2
###############################################################

###############################################################
#????? ?????? ????? 2
###############################################################
Sub GetNumb(C,I)
var J,T,K
J=0
K=1
While K>0
J=J+1
If (Mid(C,J,1)==' ') Or (J>=Len©-1) Then
If I==0 Then
T=Val(Left(C,J))
Else
T=GetNumb(Right(C,Len©-J-1),I-1)
EndIf
K=0
EndIf
wend
UO.Print(T)
return T
endsub

Sub Perp(Dir)
Var D
D=Dir
If Dir==1 Then
D=3
EndIf
If Dir==2 Then
D=4
EndIf
If Dir==3 Then
D=-1
EndIf
If Dir==4 Then
D=-2
EndIf
If Dir==-1 Then
D=-3
EndIf
If Dir==-2 Then
D=-4
EndIf
If Dir==-3 Then
D=1
EndIf
If Dir==-4 Then
D=2
EndIf
RETURN D
EndSub

Sub MoveOnce(Dir,Del,Rev)
Var Num
If Rev Then
Num=MoveNumber+1
Else
Num=MoveNumber
EndIf
If (Num>0) and (Dir<>0) Then
If Dir==1 Then
UO.Press(38,Num,Del)
EndIf
If Dir==2 Then
UO.Press(33,Num,Del)
EndIf
If Dir==3 Then
UO.Press(39,Num,Del)
EndIf
If Dir==4 Then
UO.Press(34,Num,Del)
EndIf
If Dir==-1 Then
UO.Press(40,Num-1,Del)
EndIf
If Dir==-2 Then
UO.Press(35,Num,Del)
EndIf
If Dir==-3 Then
UO.Press(37,Num,Del)
EndIf
If Dir==-4 Then
UO.Press(36,Num,Del)
EndIf
If Rev Then
If Dir<>-1 Then
UO.Press(40,1,Del)
EndIf
EndIf
EndIf
EndSub

Sub GetQDir(x,y)
Var J=0
If X==0 Then
J=1
Else
If (Y/X)<ep Then
J=3
Else
If (X/Y)<ep Then
J=1
Else
J=2
EndIf
EndIf
EndIf
RETURN J
EndSub

sub GetDir(myx,myy,ox,oy)
Var I,J
J=0
Var X=ox-myx
Var Y=oy-myy
I=GetQDir(Abs(X),Abs(Y))
If X>=0 Then
If Y>=0 Then
If I==1 Then
J=-2
Else
If I==2 Then
J=-1
Else
If I==3 Then
J=4
EndIf
EndIf
EndIf
Else
If I==1 Then
J=2
Else
If I==2 Then
J=3
Else
If I==3 Then
J=4
EndIf
EndIf
EndIf
EndIf
Else
If Y>=0 Then
If I==1 Then
J=-2
Else
If I==2 Then
J=-3
Else
If I==3 Then
J=-4
EndIf
EndIf
EndIf
Else
If I==1 Then
J=2
Else
If I==2 Then
J=1
Else
If I==3 Then
J=-4
EndIf
EndIf
EndIf
EndIf
EndIf
RETURN J
endsub

sub abs(a)
Var b
If a<0 Then
b=-a
Else
b=a
endif
return b
endsub

Sub PermResend()
Var Mn=4
Repeat
# UO.Resend()
Wait(MoveDelay*Mn)
Until (1>2)
EndSub

sub max(A,cool.gif
Var C
If A>B Then
C=A
Else
C=B
EndIf
Return C
EndSub

sub GetDistance(X,Y)
return max(abs(X-uo.getx()),abs(Y-uo.gety()))
endsub

sub GoToTile(OX,OY,N,S)
var myx, myy, MD, J
var Lx1 ,Ly1
var Lx2 ,Ly2
var Sx ,Sy
var T
var Des=N
J=1
MD=MoveDelay*1.5
myx=uo.getx()
myy=uo.gety()
MoveOnce(GetDir(uo.getx(),uo.gety(),ox,oy),MD,False)
Sx=0
Sy=0
Lx1=uo.getx()/2
Ly1=uo.gety()/2
Lx2=Lx1/2
Ly2=Ly1/2
T=UO.Timer()
If (GetDistance(ox,oy)<>N) or ((not S) and GetDistance(ox,oy)>N) Then
UO.Exec('exec PermResend')
EndIf
While ((GetDistance(ox,oy)<>N) or ((not S) and GetDistance(ox,oy)>N)) and (OX>=0) and (OY>=0)
If ((UO.Timer()-T)*15>MoveDelay) Then
T=UO.Timer()
# UO.Print(Str(uo.getx())+' '+Str(uo.gety())+' '+Str(ox)+' '+Str(oy)+' '+Str(GetDir(uo.getx(),uo.gety(),ox,oy))+' '+Str(T))
Lx2=Lx1
Ly2=Ly1
Lx1=myx
Ly1=myy
myx=uo.getx()
myy=uo.gety()
endIf
MD=MoveDelay
If ((OX-uo.getx())*(OX-uo.getx())+(OY-uo.gety())*(OY-uo.gety())>0) Then
MD=MD*3/GetDistance(ox,oy)
EndIf
wait(MD)
If GetDistance(OX,OY)>Des Then
MoveOnce(GetDir(uo.GetX(),uo.GetY(),ox,oy),MD,False)
Else
If S Then
If GetDistance(OX,OY)<Des Then
If GetDistance(OX,OY)<>0 Then
MoveOnce(GetDir(ox,oy,uo.GetX(),uo.GetY()),MD,False)
Else
MoveOnce(GetDir(uo.GetX(),uo.GetY(),Lx2,Ly2),MD,False)
EndIf
EndIf
EndIf
EndIf
If GetDistance(OX,OY)<>Des Then
If (Lx2==uo.getx()) and (Ly2==uo.gety()) Then
If (Sx<>uo.getx()) or (Sy<>uo.gety()) Then
J=1
EndIf
J=J+1
UO.Resend()
Sx = uo.getx()
Sy = uo.gety()
Stun(ox,oy,J)
EndIf
EndIf
Wend
UO.Exec('terminate PermResend')
endsub

Sub Stun(X,Y,N)
Var I
Var myx
Var myy
myx = uo.getx()
myy = uo.gety()
For I=1 to N
MoveOnce(perp(GetDir(myx,myy,x,y)),MoveDelay,False)
Next
Wait(MoveDelay)
UO.Resend()
If (myx==uo.getx()) and (myy==uo.gety()) Then
For I=1 to N
MoveOnce(-perp(GetDir(myx,myy,x,y)),MoveDelay,False)
Next
Wait(MoveDelay)
UO.Resend()
EndIf
If (myx==uo.getx()) and (myy==uo.gety()) Then
For I=1 to N
MoveOnce(-GetDir(myx,myy,x,y),MoveDelay,False)
Next
Wait(MoveDelay)
Stun(x,y,N)
EndIf
EndSub

Sub DeleteJournal(What)
Var T,J
J=False
If UO.InJournal(What) Then
J=True
UO.DeleteJournal()
EndIf
RETURN J
EndSub

sub count()
UO.Print(str(UO.Count(ore)))
end sub

sub Emil()
IF (UO.GetGraphic(UO.ObjAtLayer("Rhand"))) <> '0x0E85' Then
If UO.Count('0x0E85') > 0 Then
UO.UseType('0x0E85')
endif
else
UO.UseObject(UO.ObjAtLayer('Rhand'))
EndIf
wait(2000)
end sub

sub Clear(T,C)
Var Count = UO.Count(T,C)
UO.FindType(T,C,'backpack')
Var b = UO.GetSerial("finditem")
UO.FindType(T,C,'ground')
Var g = UO.GetSerial("finditem")
Wait(500)
UO.MoveItem(b, "0", g,str(uo.getx(g)),str(uo.gety(g)),"0")
Wait(500)
If UO.Count(T,C) == Count Then
If (UO.Count('finditem')+Count) < 60000 Then
uo.ignore('finditem')
ProDrop(T,C)
endIf
endIf
end sub

sub test()
GoToTile(2379,221,0,False)
end sub


sub alarm()
wait(100)
Uo.exec('arm 2')
wait(100)
GoToTile(2422,173,0,False)
GoToTile(2426,177,0,False)
wait(1000)
GoToTile(2421,180,0,False)
Uo.warmode(1)
wait(25000)
Uo.warmode(0)
GoToTile(2421,178,0,False)
Uo.warmode(1)
wait(25000)
Uo.warmode(0)
GoToTile(2423,178,0,False)
GoToTile(2427,177,0,False)
wait(100)
Uo.exec('arm 1')
wait(100)
end sub

sub Ress()
GoToTile(2424,177,0,False)
GoToTile(2430,177,0,False)
GoToTile(2430,184,0,False)
GoToTile(2418,196,0,False)
GoToTile(2418,211,0,False)
GoToTile(2410,221,0,False)
GoToTile(2397,221,0,False)
While UO.Dead()
uo.usefromground(0x0004)
wait(500)
WEND
Wait(1000)
GoToTile(2397,221,0,False)
GoToTile(2410,221,0,False)
GoToTile(2418,211,0,False)
GoToTile(2418,196,0,False)
GoToTile(2430,184,0,False)
GoToTile(2430,177,0,False)
GoToTile(2424,177,0,False)
end sub

sub Count()
#Irons & Rasty
UO.Print('Iron : '+Str(UO.Count(0x19B9, 0x0000)))
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('Bronze : '+Str(UO.Count(0x19B9, 0x0488)))
UO.Print('Rasty : '+Str(UO.Count(0x19B9, 0x0750)))
UO.Print('-=-=-=-=-=-=-=-')
#Coppers
wait(4000)
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('Old Copper : '+Str(UO.Count(0x19B9, 0x0949)))
UO.Print('Dull Copper : '+Str(UO.Count(0x19B9, 0x060A)))
UO.Print('Copper : '+Str(UO.Count(0x19B9, 0x0641)))
UO.Print('-=-=-=-=-=-=-=-')
#Pitit Types
wait(4000)
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('Pirit : '+Str(UO.Count(0x19B9, 0x09EE)))
UO.Print('Silver : '+Str(UO.Count(0x19B9, 0x0482)))
UO.Print('Shadow : '+Str(UO.Count(0x19B9, 0x0770)))
UO.Print('Gold : '+Str(UO.Count(0x19B9, 0x04AA)))
UO.Print('-=-=-=-=-=-=-=-')
#Verit
wait(4000)
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('Verit : '+Str(UO.Count(0x19B9, 0x0947)))
UO.Print('Agapit : '+Str(UO.Count(0x19B9, 0x0400)))
UO.Print('Blood : '+Str(UO.Count(0x19B9, 0x04C2)))
UO.Print('Azurit : '+Str(UO.Count(0x19B9, 0x04DF)))
UO.Print('-=-=-=-=-=-=-=-')
Wait(4000)
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('Mithril : '+Str(UO.Count(0x19B9, 0x052D)))
UO.Print('Valorite : '+Str(UO.Count(0x19B9, 0x0515)))
UO.Print('Winter : '+Str(UO.Count(0x19B9, 0x0481)))
UO.Print('-=-=-=-=-=-=-=-')
UO.Print('BlackRock : '+Str(UO.Count(0x19B9, 0x0455)))
UO.Print('-=-=-=-=-=-=-=-')
end sub

sub Drop()
GoToTile(2427,177,0,False)
GoToTile(2430,177,0,False)
wait(500)
var b
var g
var r
var color
UO.Set('finddistance','2')
DeleteJournal('m')
repeat
UO.FindType(0x19B9)
b=UO.GetSerial("finditem")
color=uo.GetColor("finditem")
If UO.FindCount()<>1 Then
else
UO.Say("m")
endif
UO.FindType(0x19B9, color, "ground")
g=UO.GetSerial("finditem")
Wait(300)
UO.MoveItem(b, "0", g, str(uo.getx(g)),str(uo.gety(g)),"0")
Wait(200)
until UO.InJournal("m") or uo.dead() or uo.getgraphic()=="0x0193"
wait(500)
var v
var f
var e
var colorit
UO.Set('finddistance','2')
DeleteJournal('m')
repeat
UO.FindType(0x0F25)
v=UO.GetSerial("finditem")
colorit=uo.GetColor("finditem")
If UO.FindCount()<>1 Then
else
UO.Say("m")
endif
UO.FindType(0x0F25, colorit, "ground")
f=UO.GetSerial("finditem")
Wait(300)
UO.MoveItem(v, "0", f, str(uo.getx(g)),str(uo.gety(g)),"0")
Wait(200)
UO.Say("m")
until UO.InJournal("m") or uo.dead() or uo.getgraphic()=="0x0193"
wait(1000)
GoToTile(2430,177,0,False)
GoToTile(2427,177,0,False)
end sub

sub loot1()
VAR WaitTime=100
VAR Exit=1, i
DIM Loot[2]
Loot[1]="0x0EED"
Loot[2]="0x19B9"
wait (500)
for i = 1 to 2
UO.FindType(Loot[i],"-1","lastcorpse")
UO.Grab("0","finditem")
next
end sub


sub return()
GoToTile(2430,177,0,False)
armslore()
GoToTile(2427,177,0,False)
end sub

sub armslore()
Uo.Useskill('Arms Lore')
uo.waittargettype('0x0e85')
end sub
МегаПрогер))
Тут народу делать нефиг наверно и все развлекаются чтением индусских скриптов в 100500 строчек и поиском ошибок в них smile.gif
Фесс
Мининг вокруг себя


Цитата
sub Mining()
uo.fontcolor('0x0138')
uo.msg('Script By Fess On!!!')
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("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
Mirage
Цитата(Фесс @ 12.4.2011, 12:50) *

Мининг вокруг себя

Если выкинуть понты и бред то получится вот так:
Код
sub Mining()
    var x, y, n LastTimer
    var n
    var z=UO.GetZ("self")
    var tool = '0x0e85'
    var allmsg = 'You put|t see|heavy|location|no ore|but fail|far away|in rock|must wait|nothing|elsewhere|where it'
    var endmsg = 'nothing|elsewhere|no ore here|location|far away|in rock|where it'
    for x=-2 to 2
        for y=-2 to 2
            Repeat
                n=0
                UO.DeleteJournal()
                LastTimer=UO.Timer()
                UO.WaitTargetTile("1341",UO.GetX()+x,UO.GetY()+Y,UO.GetZ())
                UO.UseType( tool )
                Repeat
                    wait(500)
                Until UO.InJournal( allmsg ) OR UO.Timer()>LastTimer+200
                n=n+1
            Until UO.InJournal( endmsg ) or n>=5
        next
    next
end sub

PS тайлов с рудой отнюдь не один = 1341. Так что лучше этот скрипт вообще выкинуть.
PPS Повторяю - зачем выкладывать тут кривые скрипты? blink.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.