Admin
Администратор
Название | Создание | Поля | Методы | Операторы |
|---|---|---|---|---|
vec2_t |
LUA:
| x : number y : number | — | vec2 + vec2 vec2 - vec2 vec2 * number number * vec2 vec2 * vec2 vec2 / number vec2 / vec2 |
vec3_t |
LUA:
| x : number y : number z : number | length() — Возвращает длину вектора :number is_zero() — Проверяет, является ли вектор нулевым : bool | vec3 + vec3 vec3 - vec3 vec3 * number number * vec3 vec3 * vec3 vec3 / number vec3 / vec3 |
color_t |
LUA:
| r : number g : number b : number a : number | — | — |
screen_pos_t | — | — | get_pos() — Возвращает экранную позицию : vec2_t is_valid() — Проверяет успешность преобразования : bool | — |
ped_t | — | — | get_pos() — Возвращает позицию педа : vec3_t get_health() — Возвращает здоровье : number get_armour() — Возвращает броню : number get_weapon_id() — Возвращает ID текущего оружия : number is_valid() — Проверяет валидность педа : bool | — |
player_t | — | — | get_id() — Возвращает ID игрока. (number) get_name() — Возвращает имя игрока : string is_in_stream() — Проверяет находится ли игрок в стриме : bool get_health() — Возвращает здоровье игрока : number get_armour() — Возвращает броню игрока : number get_ping() — Возвращает пинг игрока : number is_afk() — Проверяет находится ли игрок в AFK : bool get_ped() — Возвращает игрового персонажа : ped_t get_color() — Возвращает цвет CList игрока : color_t | — |
label_t | — | — | get_pos() — Возвращает позицию лейбла : vec3_t get_text() — Возвращает текст лейбла : string | — |
| Коллбэк | Описание | Аргументы |
|---|---|---|
|
LUA:
| Выполняется при загрузке скрипта | — |
|
LUA:
| Вызывается каждый кадр | — |
|
LUA:
| Выполняется при выгрузке скрипта | — |
| Функция | Описание | Аргументы |
|---|---|---|
|
LUA:
| Рисует прямоугольник | min : vec2_t max : vec2_tcolor : color_t thickness : number (опционально) |
|
LUA:
| Рисует заполненный прямоугольник | min : vec2_t max : vec2_t color : color_t |
|
LUA:
| Рисует линию | start : vec2_t end : vec2_t color : color_t thickness : number (опционально) |
|
LUA:
| Рисует окружность | pos : vec2_t radius : number color : color_t thickness : number (опционально) |
|
LUA:
| Рисует заполненную окружность | pos : vec2_t radius : number color : color_t |
|
LUA:
| Создает шрифт : pointer | path : string size : number |
|
LUA:
| Рисует текст | font : pointer text : string pos : vec2_t color : color_t |
| Функция | Описание | Аргументы |
|---|---|---|
|
LUA:
| Преобразует мировую позицию в экранную : screen_pos_t | position : vec3_t |
|
LUA:
| Возвращает позицию кости педа : vec3_t | ped : ped_t bone_id : number |
|
LUA:
| Возвращает системный тик : number | — |
| Функция | Описание | Аргументы |
|---|---|---|
|
LUA:
| Переподключение к серверу | — |
|
LUA:
| Добавляет сообщение в чат | text : string color : color_t type : number (опционально) |
|
LUA:
| Возвращает список всех лейблов : vector<label_t> | — |
|
LUA:
| Возвращает ближайший лейбл, содержащий указанный текст : label_t | text : string |
|
LUA:
| Проверяет существование игрока : bool | id : number |
|
LUA:
| Возвращает ник локального игрока : string | — |
|
LUA:
| Возвращает ID локального игрока : number | — |
|
LUA:
| Возвращает пинг локального игрока : number | — |
|
LUA:
| Возвращает удаленного игрока по ID: player_t | id : number |
| Функция | Описание | Аргументы |
|---|---|---|
|
LUA:
| Возвращает список всех педов : vector<ped_t> | — |
|
LUA:
| Возвращает локального педа : ped_t | — |
|
LUA:
| Выполняет бег персонажа до указанной точки : bool Если персонаж добежит до точки и дистанция будет меньше [min_dist] то функция вернет true | position : vec3_t sprint : bool (опционально) jump : bool (опционально) min_dist : number (опционально) |
| Функция | Описание | Аргументы |
|---|---|---|
|
LUA:
| Устанавливает состояние игровой клавиши | id : number state : number |
|
LUA:
| Возвращает состояние игровой клавиши : number | id : number |
|
LUA:
| Проверяет удерживается ли клавиша : bool | vk : number |
|
LUA:
| Проверяет была ли клавиша нажата : bool | vk : number |
LUA:
-- Пример автоматического сбора урожая по лейблу для фермы Arizona
local last_press = 0
function on_main()
-- получаем ближайший лейбл по фразе. это может быть лен и хлопок
local label = samp.pools.labels.get_closest_label("Можно собрать")
local pos = label:get_pos() -- получаем позицию лейбла
if pos:is_zero() then -- если позиция равна нулю выходим
return
end
-- бежим до указанной позиции со спринтом и выполняем следующие действия если дистанция будем меньше 0.6
if game.run_to_pos(pos, true, false, 0.6) then
local now = utils.get_tick() -- получаем текущий тик
-- проверяем последнее нажатие
if now - last_press >= 1000 then
-- нажимаем на игровую клавишу ALT для сбора урожая
keys.set_game_key(21, 255)
last_press = now -- обновляем последние нажатие
end
end
end
LUA:
-- Пример рендера руды по лейблу для шахты Arizona
-- создаем шрифт arial с размером 15
local font = render.create_font("C:/Windows/Fonts/arial.ttf", 15)
-- создаем белый цвет
local text_color = color_t.new(255, 255, 255, 255)
function on_main()
-- получаем контейнер лейблов
local labels = samp.pools.labels.get_labels()
-- создаем цикл
for _, label in ipairs(labels) do
-- ищем фразу в тексте лейбла
if string.find(label:get_text(), "Месторождение") then
local pos = label:get_pos() -- получаем координаты лейбла
if not pos:is_zero() then
local screen = utils.w2s(pos) -- переводим мировые координаты в экранные
if screen:is_valid() then -- проверяем находятся ли мировые координаты на экране
render.text(font, "Руда", screen:get_pos(), text_color) -- рисуем надпись "Руда" на позиции лейбла
end
end
end
end
end
Последнее редактирование: