Home Classes TL2Control

 Передвижение

НазваниеРезультатОписание
MoveTo Boolean Двигаться в указанную точку \ к указанному объекту
Delphi
function MoveTo(X, Y, Z: integer; const TimeOut: Integer = 8000): Boolean; overload;   // Двигаться в точку

function MoveTo(Obj: TL2Spawn; Dist: Integer): Boolean; overload;   // Подойти к объекту
Аргументы X, Y, Z - координаты точки, куда нужно идти
TimeOut - время (в мс), сколько пытаться двигаться в точку
Obj - объект, к котрому нужно подойти
Dist - дистанция, на которую нужно подойти к объекту
Пример
Engine.MoveTo(116130, -178611, -954);   // Идем в точку с указанными координатами

if NpcList.ByID(17490, tmp_npc) then Engine.MoveTo(tmp_npc, -20);   // Если нашелся нужный NPC, то подходим к нему
DMoveTo Boolean Двигаться в указанную точку без ожидания результата
Delphi
function DMoveTo(x, y, z : Integer): Boolean;
Аргументы x, y, z - координаты точки
Пример
while (User.DistTo(x, y, z) > 100) and Delay(500) do Engine.DMoveTo(x, y, z);   // Пока дистанция до точки > 100 бежим в нее
MoveToTarget Boolean Подойти к выбранной цели на указанную дистанцию
Delphi
function MoveToTarget(Dist: Integer = -100): Boolean;
Аргументы Dist - дистанция, на которую нужно подбежать к цели
Пример
if (User.Target <> nil) then Engine.MoveToTarget;   // Если у нас есть кто-то в таргете, то подбегаем к нему

 Аукцион - Посмотреть готовый плагин

НазваниеРезультатОписание
AuctionBuyItem Boolean Купить предмет с аукциона
Delphi
function AuctionBuyItem(Item: TL2AucItem): Boolean;
Аргументы Item - предмет, который нужно купить
Пример
// тут будет пример
AuctionCancelItem Boolean Снять предмет с продажи
Delphi
function AuctionCancelItem(Item: TL2AucItem): Boolean;
Аргументы Item - предмет, который нужно снять с продажи
Пример
// тут будет пример
AuctionGetMySales Boolean Получить список своих лотов продажи
Delphi
function AuctionGetMySales: Boolean;
Пример
// тут будет пример
AuctionSearch Boolean Формирует поисковый запрос. Результат помещается в объект Auction
Delphi
function AuctionSearch(const Name: string; Grade: Integer = -1; PageID: Integer = 0): Boolean;
Аргументы const Name - название предмета, который нужно найти
Grade - 0 - NG; 1 - D,.., 10 - R99
PageID - идентификатор раздела, в котором нужно искать
Пример
// тут будет пример
AuctionSellItem Boolean Выставить предмет на продажу
Delphi
function AuctionSellItem(Item: TL2Item; Count, Price, Days: Cardinal; CustomName: string = ''): Boolean;
Аргументы Item - предмет
Count - кол-во
Price - цена
Days - время: 1, 3, 5, 7
CustomName - тут можно указать свое название предмета, если оно отсутствует в базе
Пример
// тут будет пример

 Боевая система

НазваниеРезультатОписание
Assist Boolean Делает своей целью цель указанного игрока или NPC
Delphi
function Assist(const Name: string): Boolean;
Аргументы const Name - имя игрока, с которого берем асcист
Пример
Engine.Assist(Party.Leader.Name);   // Берем ассист с нашего ПЛа
Attack Boolean Атака
Delphi
function Attack(TimeOut: Cardinal = 2000; Ctrl: Boolean = false): Boolean;
Аргументы TimeOut - задержка (мс)
Ctrl - принудительная атака
Пример
if (User.Target is TL2Npc) then Engine.Attack;   // Если наша цель является NPC, тогда атакуем
AutoSoulShot Boolean Включает/выключает автоматическое использование сосок (зарядов души\духа)
Delphi
function AutoSoulShot(const Name: string; Active: Boolean): Boolean;
Аргументы const Name - название зарядов
Active - вкл/откл
Пример
Engine.AutoSoulShot('Заряд духа: Без ранга');   // Включит автоиспользование зарядов
AutoTarget Boolean Авто-подбор цели
Delphi
function AutoTarget(Range: Cardinal = 2000; ZRange: Cardinal = 300; NotBusy: Boolean = true): Boolean;
Аргументы Range - радиус поиска цели
ZRange - ограничение по высоте
NotBusy - выбирать только "свободную" цель (учитывает зоны на карте и объекты добавленные в IgnorList)
Пример
if (User.Target.Dead) or (User.Target = nil) then Engine.AutoTarget(1000);   // Если наша цель метрва или отсутствует вообще, то ищем новую цель в радиусе 1000
FindEnemy Boolean Поиск "врага" для заданного объекта в указанном радиусе (относительно объекта). Найденный "враг" будет записан в переменную Enemy.
Delphi
function FindEnemy(var Enemy: TL2Live; Obj: TL2Live; Range: Cardinal = 2000; ZRange: Cardinal = 300): Boolean;
Аргументы var Enemy - переменная, куда будет записан результат поиска
Obj - объект, для которого ищем "врага"
Range - радиус поиска
ZRange - ограничение поиска по высоте
Пример
// тут будет пример
SetTarget Boolean Взять в таргет
Delphi
function SetTarget(const Name: string): Boolean; overload;   // Взять в таргет по имени

function SetTarget(ID: Cardinal): Boolean; overload;   // Взять в таргет по ID

function SetTarget(Obj: TL2Live): Boolean; overload;   // Взять в таргет объект Obj
Аргументы const Name - имя того, кого берем в таргет
ID - идентификатор того, кого берем в таргет
Obj - объект, который берем в таргет
Пример
Engine.SetTarget('Таурин');   // Возьмет в таргет Таурина
CancelTarget Boolean Сбрасывает таргет
Delphi
function CancelTarget: Boolean;
Пример
if (User.Target <> nil) then Engine.CancelTarget;   // Если у нас есть кто-то в таргете, то отменяем цель
PickUp Boolean \ Integer Подбор дропа
Delphi
function PickUp(Obj: TL2Drop; Pet: Boolean = false): Boolean; overload;   // Подобирает указанный объект 

function PickUp(Range: Cardinal = 250; ZRange: Cardinal = 150; OnlyMy: Boolean = false; Pet: Boolean = false): Integer; overload;   // Авто-подбор всего дропа в указанном радиусе
Аргументы Obj - объект, который нужно подобрать
Pet - подбирать петом
Range - радиус, в котором нужно подбирать
ZRange - ограничение по высоте
OnlyMy - свой (true) или весь (false) дроп
Пример
for i:= 0 to DropList.Count-1 do Engine.PickUp(DropList(i), true);   // Пробегаем по списку дропа и подбираем все петом

 Взаимодействие с интерфейсом

НазваниеРезультатОписание
FaceControl Boolean Включить / отключить интерфеис
Delphi
function FaceControl(ID: Integer; Active: Boolean): Boolean;
Аргументы ID - какую кнопку нажать; 0-все фукнкции, 1-автоатака, 2-лечение, 3-бафы, 4-события
Active - включить (true) \ выключить (false)
Пример
Engine.FaceControl(0, true);  // Включит все функции бота
LoadConfig Boolean Загрузка конфига с указанным именем. По умолчанию из папки Settings, но можно указать полный путь.
Delphi
function LoadConfig(const Name: string): Boolean;
Аргументы const Name - название конфига, указывать вместе с расширением
Пример
if FileExists(ExePath+'\Settings\ConfigName.xml') then Engine.LoadConfig('ConfigName.xml');   // Если файл существует, то загружаем его
LoadZone Boolean Загрузка боевой зоны из файла
Delphi
function LoadZone(const Name: string): Boolean;
Аргументы const Name - название карты, указывать вместе с расширением
Пример
Engine.LoadZone('ZoneName.zmap');   // Загрузит зону с указанным названием из папки Settings
ClearZone - Очистка всех зон на карте
Delphi
procedure ClearZone;
Пример
Engine.ClearZone;   // Очистит все зоны, которые нарисованы на карте
Ignore - Добавляет объект в список игнгора. Методы AutoTarget и AutoPickup пропускают такие объекты
Delphi
procedure Ignore(Obj: TL2Spawn);
Пример
if (NpcList(i).Level > User.Level + 5) then Engine.Ignore(NpcList(i));   // Если лвл моба > нашего на 5, то игнорим его
ClearIgnore - Очищает список игнора
Delphi
procedure ClearIgnore;
Пример
Engine.ClearIgnore;   // Очищаем список игнора
InZone Boolean Проверяет, находится ли объект\точка в заданной зоне
Delphi
function InZone(Obj: TL2Spawn): Boolean; overload;   // Объект находится в зоне?

function InZone(X, Y, Z: Integer): Boolean; overload;   // Точка находится в зоне?
Аргументы Obj - объект, который проверяем
X, Y, Z - точка, которую проверяем
Пример
if (User.InZone) then Print('Я на месте');   // Если мы внутри заданной зоны, то пишем об этом

 Взаимодействие с окном игры \ бота

НазваниеРезультатОписание
BlinkWindow Boolean Мигает окном на панели задач
Delphi
function BlinkWindow(GameWindow: Boolean): Boolean;
Аргументы GameWindow - если true то мигает окном игры, иначе окном бота
Пример
if (User.Dead) then Engine.BlinkWindow(true);
BotWindow Cardinal Получить HWND окна с ботом
Delphi
function BotWindow: Cardinal;
Пример
Print(Engine.BotWindow);   // Распечатает HWND окна с ботом
GameWindow Cardinal Получить HWND окна с игрой
Delphi
function GameWindow: Cardinal;
Пример
Print(Engine.GameWindow);   // Распечатает HWND окна с игрой
GameStart Boolean Заходит на персонажа (должны находится на панели выбора персонажей)
Delphi
function GameStart(CharIndex: Integer = -1): Boolean;
Аргументы CharIndex - номер персонажа, на которого нужно зайти (по умолчанию -1: на последнего активного персонажа)
Пример
if (Engine.Status = lsOffline) then Engine.GameStart;   // Если мы офлайн, то заходим на персонажа
Restart Boolean Выходит на панель выбора персонажей (чар не должен находиться в режиме боя)
Delphi
function Restart: Boolean;
Пример
if (not User.InCombat) then Engine.Restart;   // Если мы не в бою, то делаем релог
GameClose Boolean Закрывает клиент игры Lineage II
Delphi
function GameClose: Boolean;
Пример
if (Engine.GameClose) then Print('Закрыл окно игры');   // Если закрыл игру, то напишет об этом
PostMessage   Integer Фукнция для отправки сообщений игровому окну. Используется для нажатия клавиш клавиатуры / мышки.
Delphi
function PostMessage(Msg: Cardinal; wParam, lParam: Integer): Integer;
Аргументы Msg - сообщение, которое передаем окну
wParam, lParam - передаваемые параметры
Пример
// тут будет пример
SendMessage Integer Фукнция для отправки сообщений игровому окну. Используется для нажатия клавиш клавиатуры / мышки.
Delphi
function SendMessage(Msg: Cardinal; wParam, lParam: Integer): Integer;
Аргументы Msg - сообщение, которое передаем окну
wParam, lParam - передаваемые параметры
Пример
// тут будет пример
SetGameWindow Boolean Развернуть / свернуть окно игры
Delphi
function SetGameWindow(Visible: Boolean): Boolean;
Аргументы Visible - развернуть (true) или свернуть (false)
Пример
Engine.SetGameWindow(true);   // Развернуть окно игры
SetMapKeepDist - Задает величину отступа от краев карты
Delphi
procedure SetMapKeepDist(Value: Integer);
Аргументы Value - величина, на которую нужно отступать
Пример
Engine.SetMapKeepDist(25);   // Отступать от краев карты на 25
HKPauseScript - Включить \ выключить паузу скрипта по хоткею (Ins / End)
Delphi
procedure HKPauseScript(Value: Boolean);
Аргументы Value - влючить (true) \ выключить (false)
Пример
Engine.HKPauseScript(true);   // включаем работу горячих клавиш для управления скриптом

 Разное

НазваниеРезультатОписание
GoHome Boolean Воскрешение персонажа
Delphi
function GoHome(ResType: TRestartType = rtTown): Boolean;
Аргументы ResType - куда вставать, возможные значения смотрите TRestartType
Пример
while (User.Dead) and Delay(1000) do Engine.GoHome;   // Пока мы мертвы, пытаемся воскреснуть
GameTime Cardinal Текущее игровое время
Delphi
function GameTime: Cardinal;
Пример
Print(Engine.GameTime);   // Распечатает текущее игровое время
ServerTime Cardinal Текущее время сервера
Delphi
function ServerTime: Cardinal;
Пример
Print(Engine.ServerTime);
Status TL2Status Текущий статус аккаунта
Delphi
function Status: TL2Status;
Пример
if (Engine.Status <> lsOnline) then Print('Мы не в игре');
WaitAction TL2Action Ожидание события или группы событий
Delphi
function WaitAction(Actions: TL2Actions; var P1; var P2;  TimeOut: Cardinal = INFINITE): TL2Action;
Аргументы Actions - массив событий, на которые нужно реагировать
var P1, P2 - передаваемые параметры, для каждого события свои
TimeOut - сколько ожидать событие (по умолчанию - бесконечность)
Пример
case Engine.WaitAction([laKey, laDie], P1, P2) of ...
EnterText Boolean Напечатать текст (Нажать Enter > написать Txt > нажать Enter)
Delphi
function EnterText(const Txt: string): Boolean;
Аргументы const Txt - вводимый текст
Пример
Engine.EnterText('Привет');
Say Boolean Написать сообщение в чат
Delphi
function Say(const Text: string; ChatType: Cardinal = 0; const Nick: string = ''): Boolean;
Аргументы const Text - текст сообщения
ChatType - тип чата
const Nick - ник, кому пишем (если ПМ)
Пример
Engine.Say('Привет, '+User.Target.Name);
UseKey Boolean Нажимает клавишу на клавиатуре
Delphi
function UseKey(const Key: string; Ctrl: Boolean = False; Shift: Boolean = False): Boolean; overload;   // Нажить клавишу по названию

function UseKey(Key: Word; Ctrl: Boolean = False; Shift: Boolean = False): Boolean; overload;   // Нажать клавишу, используя код кнопки
Аргументы const Key - название клавиши
Key - код клавиши (коды клавиш Delphi)
Ctrl, Shift - зажимать Ctrl, Shift или нет
Пример
Engine.UseKey('Esc');
Entry  Boolean Вызов функции в скрипте другого аккаунта. Вызываемая функция должна иметь вид OnEntry
Delphi
function Entry(var Param): Boolean;
Аргументы var Param - передаваемый параметр
FindPath Boolean Расчитывает путь между двумя точками с учетом нарисованной зоны и помещает точки в PathList подряд
Delphi
function FindPath(StartX, StartY, EndX, EndY: Integer; PathList: TList): Boolean;
Аргументы StartX, StartY - координаты начальной точки
EndX, EndY - координаты конечной точки
PathList - список точек построенного маршрута
Пример
Engine.FindPath(User.X, User.Y, 111725, -173289);
Msg - Написать системное сообщение в окне бота, различного цвета (TColor - информация о цветах)
Delphi
procedure Msg(Who, What: String; Color: Integer);
Аргументы Who - пример
What - пример
Color - цвет сообщения
Пример
Engine.Msg('Event', 'Zariche dropped!', 128);
IsBusy Boolean Проверка объекта на "занятость" другими игроками
Delphi
function IsBusy(Obj: TL2Npc): Boolean;
Аргументы Obj - проверяемый объект
Пример
if (Engine.IsBusy(User.Target)) then ...
IsDay Boolean Проверяет, день в игре или ночь? (день - true, ночь - false)
Delphi
function IsDay: Boolean;
Пример
while (Engine.IsDay) do delay(5000+random(3000));   // Пока в игре день, ждем
KickMentor Boolean Покинуть наставника
Delphi
function KickMentor: Boolean;
Пример
if (Engine.GetMentor <> '') then Engine.KickMentor;   // Если у нас есть наставник, то уходим от него
GetMentor String Узнать ник наставника
Delphi
function GetMentor: String;
Пример
if (Engine.GetMentor <> '') then Engine.KickMentor;   // Если у нас есть наставник, то уходим от него
GamePrint Boolean Написать сообщение в игровой чат
Delphi
function GamePrint(Text: string; Nick: string = ''; Chat: Integer = 0): Boolean;
Аргументы Text - пример
Nick - ник, кому пишем (если ПМ)
Chat - тип чата
Пример
Engine.GamePrint('Привет, '+User.Target.Name);

 Пати

НазваниеРезультатОписание
InviteParty Boolean Приглаить в группу игрока с указанным именем
Delphi
function InviteParty(const Name: string; Loot: TLootType = ldLooter): Boolean;
Аргументы const Name - ник, кого приглашать
Loot - тип распределения дропа (по умолчанию нашедшему), подробнее: TLootType
Пример
Engine.InviteParty('Nickname');
DismissParty Boolean Исключает игрока с указанным именем из группы
Delphi
function DismissParty(const Name: string): Boolean;
Аргументы const Name - ник, кого нужно кикнуть
Пример
Engine.DismissParty('Nickname');
JoinParty Boolean Ответить на приглашение в группу
Delphi
function JoinParty(Join: Boolean): Boolean;
Аргументы Join - принять пати? да - true, нет - false
Пример
Engine.JoinParty(false);   // Откажется от приглашения в пати
LeaveParty Boolean Выйти из группы
Delphi
function LeaveParty: Boolean;
Пример
if (Party <> nil) then Engine.LeaveParty;   // Если мы в пати, то выходим из нее
SetPartyLeader Boolean Передает лидерство в группе указанному игроку (Ваш персонаж должен быть лидером группы)
Delphi
function SetPartyLeader(const Name: string): Boolean;
Аргументы const Name - ник, кому передать лидерство
Пример
Engine.SetPartyLeader('Nickname');

 Петы

НазваниеРезультатОписание
DismissPet Boolean Отозывает пета (если есть)
Delphi
function DismissPet: Boolean;
Пример
Engine.DismissPet;
DismissSum Boolean Отозывает самона (если есть)
Delphi
function DismissSum: Boolean;
Пример
Engine.DismissSum;

 Диалоги

НазваниеРезультатОписание
DlgOpen Boolean Начать диалог с NPC
Delphi
function DlgOpen: Boolean;
Пример
Engine.DlgOpen;
DlgSel Boolean Выбор диалогов
Delphi
function DlgSel(const Txt: string; const TimeOut : Integer = 1000): Boolean; overload;   // Выбирает при диалоге строку Txt

function DlgSel(Index: integer; const TimeOut : Integer = 1000): Boolean; overload;   // Выбирает при диалоге строку с порядковым номером Index
Аргументы const Txt - текст диалога, который должен быть выбран
Index - порядковый номер диалога, который должен быть выбран
const TimeOut - время в мс сколько ожидать диалога
Пример
Engine.DlgSel('Телепорт');   // Выбор диалога 'Телепорт'

Engine.DlgSel(1);   // Выбор 1го по счету диалога
DlgText String Содержит полный текст текущего диалога
Delphi
function DlgText: String;
Пример
if (Pos('каптча', AnsiLowerCase(Engine.DlgText)) > 0) then   // Если в текущем диалоге есть слово "каптча", то..
DlgTime Cardinal Время появления последнего диалога
Delphi
function DlgTime: Cardinal;
Пример
if (Engine.DlgTime <> Last_Dlg_Time) then ...   // Если время появления последнего диалога отличается от запомненного, то ..
CBText String Содержит полный текст Community Board (Alt + B)
Delphi
function CBText: String;
Пример
Print(Engine.CBText);  // Распечатает текущий текст окна Alt + B
ConfirmDialog Boolean Отвечает на запросы Да/Нет
Delphi
function ConfirmDialog(Accept: Boolean): Boolean;
Аргументы Accept - ответ: да(true) или нет(false)
Пример
Engine.ConfirmDialog(true);   // Подтвердить диалог (например запрос о призыве)
ConfirmDlg TConfirmDlg Получить диалог (объект класса TConfirmDlg)
Delphi
function ConfirmDlg: TConfirmDlg;
Пример
// тут будет пример
BypassToServer  Boolean Отправить на сервер Bypass
Delphi
function BypassToServer(const S: String): Boolean;
Аргументы const S - отправляемый Bypass
Пример
Engine.BypassToServer('00');
AutoAcceptMentors - Автопринятие наставничества
Delphi
procedure AutoAcceptMentors(Names: string);
Аргументы Names - ники, от кого принимать наставничество. разделяются знаком ; (* - от всех)
Пример
Engine.AutoAcceptMentors('*');   // Будет принимать наставничество от всех игроков
AutoAcceptClan - Автопринятие клана
Delphi
procedure AutoAcceptClan(Names: string);
Аргументы Names - ники, от кого принимать клан. разделяются знаком ; (* - от всех)
Пример
Engine.AutoAcceptClan('*');
AutoAcceptCC - Автопринятие командного канала
Delphi
procedure AutoAcceptCC(Names: string);
Аргументы Names - ники, от кого принимать командный канал. разделяются знаком ; (* - от всех)
Пример
Engine.AutoAcceptCC('Nick1; Nick2');  // Будет принимать СС только от указанных ников

 Скилы

НазваниеРезультатОписание
UseSkill Boolean Использование скила по названию \ идентификатору
Delphi
function UseSkill(const Name: string; Ctrl: Boolean = false; Shift: Boolean = false): Boolean; overload;   // Использование скила по названию

function UseSkill(ID: Cardinal; Ctrl: Boolean = false; Shift: Boolean = false): Boolean; overload;   // Использование скила по ID
Аргументы const Name - название скила
ID - идентификатор скила
Ctrl, Shift - нажимать клавиши Ctrl, Shift или нет
Пример
Engine.UseSkill('Удар в спину', true);   // Прописать бекстаб через Ctrl на 12k (по танку. в лицо. прям по УД)
DUseSkill Boolean Использовать скил без проверки на откат / количество MP
Delphi
function DUseSkill(ID: Cardinal; Ctrl, Shift: Boolean): Boolean;
Аргументы ID - идентификатор умения
Ctrl, Shift - нажимать клавиши Ctrl, Shift или нет
Пример
Engine.DUseSkill(42);   // Использовать Sweep
StopCasting Boolean Прервать чтение заклинания
Delphi
function StopCasting: Boolean;
Пример
if (User.Cast.EndTime <> 0) then Engine.StopCasting;   // Если мы что-то кастуем, то прерываем каст
Dispel Boolean Снимает с нашего персонажа баф с указанным названием
Delphi
function Dispel(const Name: string): Boolean;
Аргументы const Name - название бафа, который нужно отменить
Пример
Engine.Dispel('Щит');
LearnSkill Boolean Учит скил по ID (в HighFive и ниже должны находиться возле тренера)
Delphi
function LearnSkill(ID: Cardinal): Boolean;
Аргументы ID - идентификатор умения, которое нужно выучить
Пример
Engine.LearnSkill(142);
UpdateSkillList Boolean Открывает окно умений (для Interlude серверов)
Delphi
function UpdateSkillList: Boolean;
Пример
Engine.UpdateSkillList;
UseSkillGround Boolean Использовать умение на указанные координаты
Delphi
function UseSkillGround(ID: Cardinal; X, Y, Z: Integer; Ctrl: Boolean = False; Shift: Boolean = False): Boolean;
Аргументы ID - идентификатор умения
X, Y, Z - координаты, куда применять
Ctrl, Shift - нажимать клавиши Ctrl, Shift или нет
Пример
Engine.UseSkillGround(14146, 124097, 124897, 14512);

 Купля-продажа предметов у торговцев

НазваниеРезультатОписание
NpcExchange Boolean Обмен вещей у NPC
Delphi
function NpcExchange(ID, Count: Cardinal; ByIndex: Boolean = False): boolean;
Аргументы ID - идентификатор вещи, которую хотим получить
Count - количество
ByIndex - укажите true, если хотите вместо инентификатора испоьзовать индекс (порядковый номер, начиная с 0)
Пример
Engine.NpcExchange(1249, 1);
NpcTrade Boolean Покупка или продажа предметов торговцу
Delphi
function NpcTrade(Sell: Boolean; Items: array of Cardinal): Boolean;
Аргументы Sell - покупка(false) / продажа(true)
Items - массив предметов для покупки/продажи вида [ID_1,Count_1, ID_2,Count_2, ...] (кратен двум)
Пример
Engine.NpcTrade(true,[23,999, 2386,999]);
CastleTax Integer Процент налога в городе
Delphi
function CastleTax(TownID: Cardinal): Integer;
Аргументы TownID - идентификатор города
Пример
// тут будет пример

 Квесты

НазваниеРезультатОписание
OpenQuestion Boolean Открывает квестовый "знак вопроса" (требуется для некоторых квестов)
Delphi
function OpenQuestion: Boolean;
Пример
Engine.OpenQuestion;
QuestStatus Boolean Проверяет выполнен указанный шаг квеста или нет
Delphi
function QuestStatus(QuestID: Cardinal; Step: Integer): Boolean;
Аргументы QuestID - идентификатор квеста
Step - интересующий шаг квеста
Пример
if Engine.QuestStatus(294, 32) then   // Если шаг квеста с ID = 294 равен 32, то
CancelQuest Boolean Отменяет квест по указанному ID
Delphi
function CancelQuest(ID: Integer): Boolean;
Аргументы ID - идентификатор квеста
Пример
Engine.CancelQuest(294);  // Отменит квест с ID = 294 
GetDailyItems Boolean Получить ежедневную награду
Delphi
function GetDailyItems: Boolean;
Пример
Engine.GetDailyItems;  

 Получение информации о других аккаунтах

НазваниеРезультатОписание
GetCharList TCharList Получает список игроков из другого аккаунта
Delphi
function GetCharList: TCharList;
Пример
// тут будет пример
GetDropList TDropList Получает список дропа из другого аккаунта
Delphi
function GetDropList: TDropList; 
Пример
// тут будет пример
GetInventory TInventory Получает список инвентаря из другого аккаунта
Delphi
function GetInventory: TInventory;
Пример
// тут будет пример
GetNpcList TNpcList Получает список NPC из другого аккаунта
Delphi
function GetNpcList: TNpcList;
Пример
// тут будет пример
GetParty TParty Получает список группы из другого аккаунта
Delphi
function GetParty: TParty;
Пример
// тут будет пример
GetPetList TPetList Получает список петов из другого аккаунта
Delphi
function GetPetList: TPetList;
Пример
// тут будет пример
GetSkillList TSkillList Получает список умений из другого аккаунта
Delphi
function GetSkillList: TSkillList;
Пример
// тут будет пример
GetUser TL2User Получает объекта User (TL2User) из другого аккаунта
Delphi
function GetUser: TL2User;
Пример
// тут будет пример
GetFaceState Boolean Узнать статус кнопки интерфейса: включен\выключен? (FaceControl)
Delphi
function GetFaceState(ID: Integer): Boolean;
Аргументы ID - идентификатор кнопки. 0-общая, 1-автоатака, 2-лечение, 3-бафы, 4-события
Пример
if Engine.GetFaceState(0) then Print('Интерфейс включен');

 Работа с предметами

НазваниеРезультатОписание
UseItem Boolean Использует предмет
Delphi
function UseItem(const Name: string; Pet: Boolean = false): Boolean; overload;   // Использовать предмет по названию

function UseItem(ID: Cardinal; Pet: Boolean = false): Boolean; overload;   // Использовать предмет по идентификатору

function UseItem(Obj: TL2Item; Pet: Boolean = false): Boolean; overload;   // Использовать конкретный предмет
Аргументы const Name - название предмета
ID - идентификатор предмета
Obj - конкретный предмет
Pet - использует петом
Пример
Engine.UseItem(736);   // Использовать Scroll of Escape
LoadItems Boolean Работа со складом
Delphi
function LoadItems(ToWH: Boolean; Items: array of Cardinal): Boolean;
Аргументы ToWH - положить(true) или взять(false) со склада
Items - массив пар, идентификатор итема и количество предметов. имеет вид [id_1,count_1, id_2,count_2, ...]
Пример
// тут будет пример
MoveItem Boolean Отдать пету / забрать у пета указанный предмет
Delphi
function MoveItem(const Name: string; Count: Cardinal; ToPet: Boolean): Boolean;
Аргументы const Name - название предмета
Count - количество
ToPet - отдать пету(true) или забрать у пета(false)
Пример
// тут будет пример
Equipped Integer Проверка экипировки
Delphi
function Equipped(const Name: string): Integer;
Аргументы const Name - название предмета
Пример
// тут будет пример
MakeItem Boolean Скрафтить предмет
Delphi
function MakeItem(Index: Cardinal): Boolean;
Аргументы Index - порядковый номер в списке крафта (начиная с 0)
Пример
// тут будет пример
CrystalItem Boolean Разбить предмет на кристалы
Delphi
function CrystalItem(ID: Cardinal): Boolean;
Аргументы ID - идентификатор предмета
Пример
Engine.CrystalItem(3592);
DestroyItem Boolean Удаляет указанный предмет
Delphi
function DestroyItem(const Name: string; Count: Cardinal): Boolean; overload;   // Удалить предмет по названию

function DestroyItem(ID: integer; Count: Cardinal): Boolean; overload;   // Удалить предмет по ID
Аргументы const Name - название предета
ID - идентификатор предета
Count - количество, которое нужно удалить
Пример
Engine.DestroyItem(57, 1);   // Удалит 1 аденку

 Действия

НазваниеРезультатОписание
UseAction Boolean Использование игровых действий
Delphi
function UseAction(ID: Cardinal; Ctrl: Boolean = false; Shift: Boolean = false): Boolean;
Аргументы ID - идентификатор действия
Ctrl, Shift - использовать клавиши Ctrl, Shift или нет
Пример
if (User.Sitting) then if Engine.UseAction(0) then delay(2222);   // Если мы сидим, то встать
Sit Boolean Сесть
Delphi
function Sit: Boolean;
Пример
if (User.HP < 40) then Engine.Sit;   // Если HP < 40%, то сесть
Stand Boolean Встать
Delphi
function Stand: Boolean;
Пример
if (User.Sitting) then if Engine.Stand then delay(2222);   // Если мы сидим, то встать
Unstuck Boolean Сделать Unstuck
Delphi
function Unstuck: Boolean;
Пример
if Engine.Unstuck then while (User.Cast.EndTime <> 0) do delay(1000);   // Используем Unstuck и ждем окончания каста
CreateRoom Boolean Создать комнату группы (подбор группы)
Delphi
function CreateRoom(Text: string; LevelStart, LevelEnd: Integer): Boolean;
Аргументы Text - текст
LevelStart, LevelEnd - мин и макс уровни для комнаты
Пример
Engine.CreateRoom('лф ЕЕ + ТАНК в 59 лабу', 54, 64);   // Создать комнату для поиска группы для 54-64 лвлов
CloseRoom Boolean Закрыть комнату группы
Delphi
function CloseRoom: Boolean;
Пример
Engine.CloseRoom;
OpenPrivateStore Boolean Открыть личную лавку (покупка \ продажа \ крафт)
Delphi
function OpenPrivateStore(PriceList: array of Cardinal; StoreType: Byte; StoreMsg: string): Boolean;
Аргументы PriceList - массив вида [id_1,count_1,price_1, id_2,count_2,price_2, ...] (идентификатор, кол-во, цена за шт)
StoreType - тип лавки, значения 0-8, смотрите TStoreType
StoreMsg - сообщение на вывеске
Пример
Engine.OpenPrivateStore([2508, 500, 3500], 1, 'WTS Проклятые кости по 3.5к');   // Сесть продавать 500 итемов по 3.5к за штуку

 Работа с почтой

НазваниеРезультатОписание
SendMail Boolean Отправка почты
Delphi
function SendMail(const Recipient: string; const Theme: string; const Content: string; Items: array of Cardinal; Price: Cardinal = 0): Boolean;
Аргументы const Recipient - получатель письма
const Theme - тема письма
const Content - текст письма
Items - вложения, массив вида [id_1,count_1, id_2,count_2, ...]
Price - цена (для платных писем)
Пример
Engine.SendMail('Nickname', 'тема', 'текст письма', [57, 100000]);  // Отправит 100к адены на указанный ник
GetMailItems Boolean Принять почту
Delphi
function GetMailItems(MaxLoad: Cardinal = 65; MaxCount: Cardinal = 1000): Boolean;
Аргументы MaxLoad - максимальная загрузка, в %-ах
MaxCount - максимальное кол-во, которое можно получить
Пример
// Тут будет пример..
ClearMail Boolean Очистить почтовый ящик
Delphi
function ClearMail: Boolean;
Пример
Engine.ClearMail;