Так давай по кускам разбирать а то у тебя очень запутанный способ убегания от элементалей и ПК.
Code:
Sub mining()
VAR mx, my, mz, i, j, jor, ser, noto, n, LTimer, TrT1, TrT2
VAR allmsg = 'lemental|Wow|treasure|table|attacking you|%|destroyed|broke|useable|put the|is nothing here to mine|Wthere do you|have no line|mining elsewhere|too far away|so close to yourself|Logs|nothing|ou hack at the tree|no logs|ou can|reach this|hat is too far away|do much|t appears immune to your blow|cannot|fishing elsewhere|too far away|pull out|anything|no fish|0xAD00|0xA867|0xA2DE|0xAD03|0x5DE0|0x5DE1|0x5DE2|0x5DE3|0x5DE4|0x5DE5|0x5DE6|0x5DE7|выкопали|Вы положили|Вам не удалось|У вас нет|ничего|Тут ничего|Попробуйте|атакует|положили|древесина кончилась|дрова|ударили по дереву|ут нечего рубить|ы не можете до этого достать|ерево слишком далеко|то кажется свободным для вашего удара|поймали|не получилось|нету рыбы|месте|далеко|вытащили удочку'
VAR endmsg = '%|destroyed|is nothing here to mine|have no line|Try mining elsewhere|too far away|so close to yourself|nothing|no logs|ou can|cannot|fishing elsewhere|no fish|0xAD00|0xA867|0xA2DE|Тут ничего|нет руды|У вас нет|Попробуйте|древесина кончилась|ут нечего рубить|ы не можете до этого достать|ерево слишком далеко|свободным для вашего удара|нету рыбы|в другом месте|далеко|вытащили удочку'
Dim Ore[4]
Ore[1] = '0x19B7'
Ore[2] = '0x19BA'
Ore[3] = '0x19B8'
Ore[4] = '0x19B9'
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
uo.set('finddistance','2')
for i = mx-4 to mx+4
for j = my-4 to my+4
UO.DeleteJournal()
while not ( TrT || UO.Dead() || UO.InJournal( endmsg ) ) ; пока не пройдет 12 секунд или не закончит копать
UO.DeleteJournal()
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Usetype("0x0E85")
LTimer=UO.Timer()
TrT1 = UO.Timer() > LTimer + 60; !!! 60/10 = 6 sec !!!
TrT2 = UO.Timer() > LTimer + 120; !!! 120/10 = 12 sec !!!
while not ( TrT || UO.Dead() || UO.InJournal( allmsg ) ) ; пока не пройдет 6 секунд или не любая фраза из журнала.
if uo.Dead() then
uo.playwav("C:\games\ultima online\alert.wav")
uo.exec('terminate all')
endif
if uo.weight > uo.str*4 then
return
endif
wait(250)
wend
wend
next
next
uo.print(' Летим дамой ...')
end sub
Вот это копалка БЕЗ убегания от плохишей. Протестируй, а потом опиши что именно ты хочешь чар делал при атаке/элементале/ПК.
PS если не будет работать то тебе можно попробовать взять мой добывающий модуль для своего скрипта.