Поставил после сессии ультиму онлайн, ну и с ней easy Uo - программу облегчающую жизнь обычных людей.
Сейчас решил написать небольшой гайд по простому и эффективному скриптингу в изиУо.
Начну с постановки задачи. Что мы хотим от скрипта, который напишем? Не проще ли будет осуществить наши цели и задачи при помощи Razor(Ассист, Инжект)?
Если нет, то продолжим.
Что бы как-то взаимодействовать со средой, мы должны знать:
-как взаимодействовать с предметами
-как получать информацию из окружающего мира
-как сделать ....
Знание - сила.
Поэтому я советую детально изучить сайт http://www.easyuo.com/ в целом, а также reference конкретно:
http://wiki.easyuo.com/index.php/Documentation.
Сейчас я расскажу о шаблонах, которые чаще остальных используются в скриптовании.
Чтобы найти какой-либо предмет мы используем команду finditem.
Общий шаблон выглядит так:
finditem what(type or id) where
Пример: ищем бинты в бакпаке.
finditem ZLF C_ , #backpackid
Пример: ищем бинты
finditem ZLF
Пример: ищем бинты в сумке
finditem ZLF C
Искать мы можем ещё на земле, а также без указания места поиска.
Что мы получаем?
FindCNT - количество найденных предметов.
FindStack - количество в стопке.
Findid - ID предмета
FindCol - цвет
Findkind - отвечает за результат поиска, -1 значит что ничего не найдено.
FindX/Y/Z - координаты найденного предмета.
Используем наши бинты
finditem ZLF C_ , #backpackid
if #FINDCNT > 0
{
set #lobjectid #findid
event macro 17 0
....
}
Разберемся с писаниной.
Читаем текст построчно: искать предмет типа ЗЛФ в контейнере с ИД таким же как у нашего бакпака; если нашли больше чем 0 предметов;установить последним использованным предметом то что нашли; использовать последний предмет;....
Чтобы посмотреть возможные ивинт макро зайдите сюда : http://wiki.easyuo.com/index.php/Event_Macro
Если используете в своих скриптах ивинт макро, но они не работают, пропишите в начале initevents.
Чтобы посмотреть типы предметов зайдите сюда : http://www.easyuo.com/itemdb/index.php
Для цели мы можем использовать ивинт макро. Посмотрите таблицу, а имменно значения для ласт таргет, некст таргет, таргет селф.
Что бы более менее скриптовать нужно знать структуры управления, такие как while if repeat for.
while true {
}
if true {
}else if false {
}else {
}
if true {
}
if true {
} else {
}
repeat
{
} until true
for %i 1 20
{
}
Так же имеются операторы sub gosub и goto
Loop:
if #hits < #maxhits
gosub heal
goto Loop
sub heal
; do something
return
Суб - та же функция/продецура. В неё вы можете передавать параметры например так gosub heal 50 или gosub heal %some_var . Когда будем использовать внутри саба то используем значение как %1.
С помощью easyuo можно написать очень много полезных скриптов. Главное это кропотливо и не торопясь просчитывать каждый шаг. Тогда вы сможете довести свой скрипт до идеального состояния, когда его в принципе не возможно будет остановить.
Ещё совет для начинающих - начинайте с простого. Легче изучать.
Комментариев нет:
Отправить комментарий