J17 wrote:
Только, наверное, раз в 5 минут может сфизлиться тинкер из-за юзанья скилла, а после этого может сфизлиться и спиритспик из-за тинкеринга...
Лучше доработать тот существующий скрипт, чтобы параллельно ничего не запускать.
Но не имея его, мы помочь не сможем...
Я писал но так до ума и не довёл. Вот разберитесь и покапайтеся...
Code:
VAR Sunduk = '0x40078ED6' ; Сериал сундука
VAR Ingi = '0x1BEF' ; Тип ингов
VAR Instrum = '0x1EBC' ; Тип инструмента тинкера
VAR Bottle = '0x0F0E' ; Тип бутылки
VAR Kolvo = 300 ; Брать ингов
VAR k = 0
var count=0,i=0
sub Tinker()
var count=0,i=0
uo.useobject('backpack')
UO.Exec('terminate Reconnector')
wait(1000)
UO.Exec('exec Reconnector')
wait(1000)
i=0
repeat
i=i+1
cheklag()
While TRUE
UO.FindType( Ingi, -1, Sunduk ) ; Ищем инги в сундуке
If UO.FindCount() == 0 Then
UO.Print("Iron Ingots not found, script terminated")
return
Endif
UO.Grab( Str( Kolvo ), 'finditem' )
wait( 2000 )
While UO.Count( Ingi ) > 0
; Пока в паке есть инги
UO.Print('Ostalos ' + Str( UO.Count( Ingi ) ) + ' ingots' )
UO.DeleteJournal()
UO.CancelMenu()
UO.WaitMenu ('Tinkering', 'Tools', 'Tools', 'empty bottle' )
UO.UseType( Instrum )
k = 0
while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 )
k = k + 1
wait(500)
wend
if UO.Count( Bottle ) > 0 then
UO.FindType( Bottle, -1, -1 )
UO.MoveItem( 'finditem', 0, Sunduk )
wait( 1000 )
UO.Print( 'Bottle moved' )
end if
Wend
Wend
if i==1 then
uo.usetype('0x097B')
wait(1000)
i=0
cheklag()
uo.print("Spirit Speak...")
uo.useskill ("Spirit Speak")
uo.deletejournal()
repeat
wait(10)
until UO.InJournal("You establish a connection to the netherworld.") or UO.InJournal("You fail your attempt at contacting the netherworld.")
end if
until UO.Dead()
end sub
sub cheklag()
uo.deletejournal()
uo.click('backpack')
repeat
wait(10)
until uo.InJournal("backpack")
end sub
sub Reconnector()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(20000) # WorldSave Protection
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.LDblClick(357,164)
UO.LClick(616,459)
Wait(3000)
WEnd
Wait(3000)
if (RFlag == 0) and (ReconnectTime <> '0') Then
UO.Exec('terminate Tinker')
wait(1000)
UO.Exec('exec Tinker')
wait(1000)
UO.TextOpen()
UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
RFlag = 1
ReconnectTime = '0'
endif
Until false
end sub
sub MakeTime()
VAR D, T, Ret, i
Ret = STR(UO.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(UO.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub
_________________
Нет ничего невозможного...
Кто
ИЩЕТ, тот всегда найдёт...
Code:
sub UO()
UO.Chto-To("S Chem-To")
end sub
© I'm