Введение
Lua API RezTOP для CS2 позволяет писать свои скрипты: рисовать поверх игры, читать данные игроков и оружия, добавлять вкладки в меню, менять команду движения и реагировать на события игры.
Скрипты пишутся на Lua 5.1 и выполняются в LuaJIT 2.1. Дополнительно доступны функции совместимости с Lua 5.2: rawlen, table.pack, table.unpack, метаметоды __pairs и __ipairs. Наша сборка LuaJIT также понимает дополнительный синтаксис (continue, +=, ?., битовые операторы и др.) — см. страницу «Расширенный синтаксис».
Что есть в API#
| Раздел | Что внутри |
|---|---|
| События | подписка на кадр, движение, выстрелы, сущности, игровые события |
| render | рисование фигур, текста и картинок, перевод координат мира в экран |
| entity | игроки, оружие, любые сущности игры и их поля |
| trace | трассы лучей и пуль, проверка видимости |
| ui | своя вкладка в меню: переключатели, ползунки, списки, цвета |
| esp | свои элементы в редакторе ESP |
| database | данные, которые переживают перезапуск игры |
| utils, globals, console | время, клавиши, консоль, глобальные переменные игры |
| panorama | выполнение JavaScript интерфейса игры |
| Типы | vector, angle, vector2, color, cmd |
Соглашения в документации#
- Необязательный параметр помечен
?:thickness?: number. Значение по умолчанию указано в описании. vector,angle,vector2,color— значения математических типов. Их создают одноимённые конструкторы:vector(1, 2, 3),color(255, 0, 0, 255).entity— объект сущности игры (игрок, оружие и т. п.).- Числа проверяются строго: строка
"5"вместо числа даёт ошибкуbad argument #N ... (number expected, got string). - Целые аргументы усекаются до 32-битного целого.