I tried to use this lumberjacking script:
Code: #============================================================== # lj() - LumberJacking # # Journal has been deleted!!! #-------------------------------------------------------------- sub lj() UO.Exec('exec alarm') while NOT UO.Dead() lj1() lj2() lj3() wend end sub
sub lj1() VAR ct=1,StepCount DIM dbX[6],deX[6],dbY[6],deY[6],Dir[6]
;----- InitTrack----- dbX[1]=2078 deX[1]=2078 dbY[1]=2082 deY[1]=2139 Dir[1]=1
dbX[2]=2086 deX[2]=2086 dbY[2]=2130 deY[2]=2087 Dir[2]=-1 dbX[3]=2094 deX[3]=2094 dbY[3]=2073 deY[3]=2133 Dir[3]=1 dbX[4]=2102 deX[4]=2102 dbY[4]=2130 deY[4]=2096 Dir[4]=-1
dbX[5]=2102 dbY[5]=2096
;-------------------- mrecal(0x400ACC97) ; start position
for ct=1 to 4 repeat tohide() chopit(278,171,6) chopit(362,253,2) StepCount=1 while UO.GetY()<>deY[ct] AND StepCount<=3 walk(0,1*Dir[ct],0) StepCount=StepCount+1 wend until UO.GetY()==deY[ct] walk(dbX[ct+1]-deX[ct],dbY[ct+1]-deY[ct],0) next mrecal(0x4008B896) ; home logunload() end sub
sub lj2() VAR ct=1,StepCount DIM dbX[6],deX[6],dbY[6],deY[6],Dir[6]
;----- InitTrack----- dbX[1]=3382 deX[1]=3382 dbY[1]=426 deY[1]=474 Dir[1]=1
dbX[2]=3374 deX[2]=3374 dbY[2]=474 deY[2]=502 Dir[2]=1 dbX[3]=3366 deX[3]=3366 dbY[3]=516 deY[3]=484 Dir[3]=-1 dbX[4]=3358 deX[4]=3358 dbY[4]=510 deY[4]=432 Dir[4]=-1
dbX[5]=3358 dbY[5]=432
;-------------------- mrecal(0x4008B064) ; start position
for ct=1 to 4 repeat tohide() chopit(278,171,6) chopit(362,253,2) StepCount=1 while UO.GetY()<>deY[ct] AND StepCount<=3 walk(0,1*Dir[ct],0) StepCount=StepCount+1 wend until UO.GetY()==deY[ct] walk(dbX[ct+1]-deX[ct],dbY[ct+1]-deY[ct],0) next mrecal(0x4008B896) ; home logunload() end sub
sub lj3() VAR ct=1,StepCount DIM dbX[6],deX[6],dbY[6],deY[6],Dir[6]
;----- InitTrack----- dbX[1]=3266 deX[1]=3266 dbY[1]=261 deY[1]=326 Dir[1]=1
dbX[2]=3258 deX[2]=3258 dbY[2]=378 deY[2]=250 Dir[2]=-1 dbX[3]=3246 deX[3]=3246 dbY[3]=219 deY[3]=310 Dir[3]=1 dbX[4]=3238 deX[4]=3238 dbY[4]=315 deY[4]=348 Dir[4]=1
dbX[5]=3238 dbY[5]=348
;-------------------- mrecal(0x4008B06A) ; start position for ct=1 to 4 repeat tohide() chopit(278,171,6) chopit(362,253,2) StepCount=1 while UO.GetY()<>deY[ct] AND StepCount<=3 walk(0,1*Dir[ct],0) StepCount=StepCount+1 wend until UO.GetY()==deY[ct] walk(dbX[ct+1]-deX[ct],dbY[ct+1]-deY[ct],0) next mrecal(0x4008B896) ; home logunload() end sub
sub chopit(ChopX,ChopY,Dir) VAR LastTimer,WaitTime=90, Last=0, Exit VAR MaxWeight=800 VAR ChopCount, MaxChopCount=100
if UO.Weight>MaxWeight then unload() endif ChopCount=0 repeat Exit=0 CheckLag() If Last then UO.WaitTargetTile('lasttile') UO.UseType('0x0F43') ; hatchet Else UO.UseType('0x0F43') ; hatchet wait(400) UO.LClick(ChopX,ChopY) Last=1 endif wait(1000) If UO.GetDir()==Dir Then LastTimer=UO.Timer() while NOT UO.InJournal("You put") AND NOT UO.InJournal("You hack") AND NOT UO.InJournal("There are no") AND NOT UO.InJournal("That is too") AND NOT UO.InJournal("It appears") AND NOT UO.InJournal("You can") AND NOT LastTimer+WaitTime<UO.Timer() wait(100) wend If LastTimer+WaitTime<UO.Timer() Then Exit=1 Endif if UO.InJournal("You hack") then repeat wait(100) until UO.InJournal("You put") OR LastTimer+WaitTime<UO.Timer() endif ChopCount=ChopCount+1 Else Exit=1 Endif until UO.InJournal("There are no") OR UO.InJournal("That is too") OR UO.InJournal("It appears") OR UO.InJournal("You can") OR ChopCount>=MaxChopCount OR Exit==1 end sub
sub unload() VAR TempRune=0x4008B061 markrune: CheckLag() UO.WaitTargetObject(TempRune) UO.Cast('Mark') wait(4000) If UO.InJournal("spell fizzles") then goto markrune endif mrecal(0x4008B896) ; home logunload() mrecal(TempRune) end sub
sub logunload() UO.SetReceivingContainer('0x40082EBA') wait(500) begin: UO.FindType('0x1BDD') ; logs if UO.GetQuantity('finditem')>0 then UO.Grab('0','finditem') wait(800) goto begin endif UO.UnSetReceivingContainer() end sub
sub mrecal(rune) repeat CheckLag() UO.WaitTargetObject(rune) UO.Cast('Recal') wait(4000) until NOT UO.InJournal("spell fizzles")
markrune: If UO.InJournal("fades completely") then CheckLag() UO.WaitTargetObject(rune) UO.Cast('Mark') endif wait(4000) If UO.InJournal("spell fizzles") then goto markrune endif end sub
############################################################### ############################################################### ; ; Shared Subs ; ############################################################### ###############################################################
#============================================================== # tohide() - try hidding char. When char lose HP, drink inviz # potion if it found in backpack # # Journal has been deleted!!! #-------------------------------------------------------------- sub tohide() VAR CharHP=150 while NOT UO.Hidden() UO.DeleteJournal() UO.FindType('0x0F0E','0x0631','my')
if UO.Life<CharHP AND UO.FindCount() then UO.UseType('0x0F0E','0x0631') ; inviz potion wait(2000) else UO.Exec('warmode 0') UO.UseSkill('Hiding') repeat wait(50) until UO.InJournal('You have hidden') OR UO.InJournal('seem to hide') OR UO.InJournal('preoccupied') endif wend end sub
#============================================================== # CheckLag() - click on backpack and awaiting "backpack" # message in journal. # # Journal has been deleted!!! #-------------------------------------------------------------- sub CheckLag() UO.DeleteJournal() UO.Click('backpack')
repeat wait(50) until UO.InJournal('backpack') end sub
#============================================================== # Gong(counter) - playing wav-file 'counter'-times #-------------------------------------------------------------- sub Gong(times) ; play wav-file VAR i for i=1 to times UO.Exec("playwav c:\game\uo\cow") wait(1200) ; time to play sample at once next end sub
#============================================================== # Alarm() - when char lose some HP, U are informed :) #-------------------------------------------------------------- sub Alarm() VAR CharHP=150 while 1==1 wait(1000) if UO.Life<CharHP then gong(1) endif wend end sub
#============================================================== # Walk(dX,dY) - char is walking by dX and dY step # sub using Home, End, PgUp, PgDown keys # d'not rebind this key from default action! # # dX - W->E direction of walking # -dX - W<-E direction of walking # dY - N->S direction of walking # -dY - N<-S direction of walking # walkwait - delay after keypress #-------------------------------------------------------------- sub Walk(dx,dy,Check) VAR i, walkwait=300 VAR DestX,DestY
DestX=UO.GetX()+dx DestY=UO.GetY()+dy while DestX<>UO.GetX() dx=DestX-UO.GetX() If dx<>0 then If dx>0 then If UO.GetDir()<>2 then UO.Press(34) wait(walkwait) If Check Then CheckPause() Endif Endif For i=1 to dx UO.Press(34) wait(walkwait) If Check Then CheckPause() Endif next Else If UO.GetDir()<>6 then UO.Press(36) wait(walkwait) If Check Then CheckPause() Endif Endif For i=1 to dx*-1 UO.Press(36) wait(walkwait) If Check Then CheckPause() Endif next Endif Endif If Check Then CheckPause() Endif wend while DestY<>UO.GetY() dy=DestY-UO.GetY() If dy<>0 then If dy>0 then If UO.GetDir()<>4 then UO.Press(35) wait(walkwait) If Check Then CheckPause() Endif Endif For i=1 to dy UO.Press(35) wait(walkwait) If Check Then CheckPause() Endif next Else If UO.GetDir()<>0 then UO.Press(33) wait(walkwait) If Check Then CheckPause() Endif Endif For i=1 to dy*-1 UO.Press(33) wait(walkwait) If Check Then CheckPause() Endif next Endif endif If Check Then CheckPause() Endif wend end sub
But I really don't get it... for the init track I have to setup the coordinates right? I tried to but it dosn't do shit.. can anyone help?
|