Выложил свой скрипт на прокачку Snooping.
Достаточно скопировать в блокнот и сохранить как Snooping&Stealing.sc
Действие скрипта - Ищет в радиусе 5 клеток Чара, у чара ищет бекпак, пытается его открыть. Если вам надо чтобы открытый пак закрывался, то сделайте(САМИ!!!) отход на определённое расстояние пока не закроется.
Code:
var pack, char ; Переменные
pack='0x0E75' ; Тип(Type) пака жертвы экспроприации(backpack)
sub main() ; Основная функция
uo.set('finddistance','5') ; Дистанция поиска
uo.ignore('self') ; Игнорим себя
var x ; Переменная для таймера
repeat ; Условие
uo.findtype(-1,-1,'ground') ; Ищем всё на земле
wait(200) ; Пауза 0.2 секунды
if uo.getgraphic('finditem')=='0x0190' || uo.getgraphic('finditem')=='0x0191' then ; если находим тип персов(м\ж) тогда
char=uo.getserial('finditem') ; Присваиваем переменной серийник(ID) найденного перса
uo.print(char)
else ; иначе(если тип не подходит)
uo.ignore('finditem') ; Игнорим найденое
endif
wait(200) ; Пауза 0.2 секунды
until uo.getgraphic('finditem')=='0x0190' || uo.getgraphic('finditem')=='0x0191' ; Условие ложно пока не найден нужный тип
uo.useobject(char) ; Юзаем наденое
uo.findtype(pack,-1,char) ; Ищем в найденном вещь по типу бекпака
pack=uo.getserial('finditem') ; Присваиваем переменной серийник (ID) найденого
while uo.skillval('Snooping',1)<=1000 ; Пока величина скилла меньше 100 реала
ws() ; Проверка на сейв (описание функции ниже)
uo.useobject(pack) ; Пытаемся открыть бекпак
x=uo.timer() ; Присваиваем переменной некое значение функции(процедуре?) таймера
repeat ; условие
wait(200) ; Пауза 0.2 секунды
until uo.injournal('You fail') || uo.timer()==x+30 ; Условие ложно пока не найдена нужная строка в журнале, или не прошло 3 секунды
wait(1000) ; Пауза 1 секунда
wend
Stealing(pack) ; После прокачки снупинга идёт стибринг
end sub
sub CheckLag() ; Функция отклика
UO.DeleteJournal() ; вытрем все сообщения в журнале (Inj, но не клиента)
UO.Click('backpack') ; одиночный клик по вашему backpack
; ждем сообщения в журнале
repeat
wait(100)
until UO.InJournal("backpack")
; этот цикл завершится, если это сообщение появится.... замечу "Backpack" и "backpack"
; регистр важен Пишите точно что ждете
end sub
Sub ws() ; Функция проверки журнала на запись мира
if uo.injournal("world is saving now...") then
while not uo.injournal("world data saving")
wait(100)
wend
endif
CheckLag()
end sub
sub Stealing(bpack) ; недописано....
repeat
UO.FindType( '-1', '-1', bpack )
UO.UseSkill( 'Stealing', 'finditem' )
wait(4000)
until UO.Dead()
endsub