Вот часть скрипта:
Code: Select all
sub mine()
VAR DigDistance, TileNum, KillElemental
VAR ElemSignal, LastTimer
DIM BaseX[4], BaseY[4]
VAR BaseZ, WayPoint, WayPoints
VAR MaxWeight
VAR i,j,TileY,TileX,DirX,DirY
VAR Delta,BeginX,EndX,BeginY,EndY
TileNum='1341'
MaxWeight=100
DigDistance=2
KillElemental='No'
ElemSignal='Off'
BaseX[1]=1990
BaseY[1]=262
BaseZ=0
BaseX[2]=1975
BaseY[2]=263
BaseX[3]=2560
BaseY[3]=481
BaseX[4]=2579
BaseY[4]=490
WayPoints=4
While NOT UO.Dead()
For WayPoint=1 to WayPoints-4
SuperWalk(BaseX[WayPoint],BaseY[WayPoint],"")
digitstay(MaxWeight,DigDistance,KillElemental,ElemSignal,BaseX[WayPoint],BaseY[WayPoint])
Next
wend
end sub
;-------------------- Try to mine under self ------------------
sub digitstay(MaxWeight,MaxDistance,KillElemental,ElemSignal,BaseX,BaseY)
VAR x,y,z='0',TileNum='1339'
VAR Last=0,LastTimer, ContFlag=1
VAR MaxTimer=110
For x=-MaxDistance to MaxDistance
For y=-MaxDistance to MaxDistance
Repeat
CheckLag() ; deleting journal
UO.WaitTargetTile(TileNum,STR(UO.GetX()+x),STR(UO.GetY()+Y),8)
UO.UseType('0x0E85')
LastTimer=UO.Timer()
Repeat
wait(500)
until UO.InJournal("Try mining") OR UO.InJournal("You put") OR UO.InJournal("You loosen") OR UO.InJournal("There is no") OR UO.InJournal("That is too") OR UO.InJournal("OOPS") OR UO.InJournal("attacking you") OR LastTimer+200<UO.Timer()
If UO.InJournal('You loosen') then
repeat
wait(500)
until UO.InJournal("You put") OR LastTimer+MaxTimer<UO.Timer()
Endif
If UO.Weight>=MaxWeight then
dom()
unload()
back()
Endif
If UO.Dead() then
test()
ready()
back()
Endif
Until UO.InJournal("There is no") OR UO.InJournal("That is too") OR UO.InJournal("Try mining") OR ContFlag==0
Next
Next
end sub
Destruction: Учимся юзать тэги форума.