Часть скрипта на мининг
Code:
Sub M()
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.Dead() Then
#Ress()
#GoToTile(X,Y,1,false)
#UO.WaitTargetTile(Str(T),Str(X),Str(Y),Str(Z))
#Emil()
endif
WEND
repeat
Wait(1000)
[b]DeadCheck()[/b]
#if uo.count(Ore)>170 then
wei = ( UO.Str * 4 ) - 20
if UO.Weight > wei then
GoToTile(1816,850,0,False)
Plav()
Exist()
wait(1000)
GoToTile(X,Y,1,False)
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
Code:
sub DeadCheck()
If UO.Dead() Then
UO.PlayWav('C:\Impossible.wav')
Repeat
wait(5000)
Until UO.InJournal("Stop DeadCheck")
End If
UO.Print('Im not a ghost...')
end sub
Можно тама сделать не DeadCheck(), а UO.exec DeadCheck(), но я хочу, что бы когда убьют минера, я его реснул бы, сказал фразу, он бы сам продолжил копать, а так я должен буду юзать кирку на себя, чтог бы под собой копал и потом сам дальше пойдет копать продолжать!