Документация
Скрипты
К скриптам
Справочник

ui

Настройки скрипта в ClickGUI, HUD-элементы и собственные экраны.

Разбор с примерами — Настройки.

ui.group(name) -> {expanded, set_expanded}
Заголовок-группа: имя по центру, настройки под ним с отступом. Свернуть можно кликом
ui.gear(name, hostWidget) -> {expanded, set_expanded}
Группа-шестерёнка: иконка появляется в строке hostWidget, раскрывает вложенные настройки
ui.widget:group(group) -> widget
Кладёт настройку в группу ui.group или ui.gear
ui.widget:bind() -> number
Код клавиши, назначенной на настройку (checkbox и keybind)
ui.widget:set_bind(key) -> nil
Назначить клавишу. -1 — снять бинд
ui.widget:bind_mode() -> "toggle" | "hold"
ui.widget:set_bind_mode("toggle" | "hold") -> nil
Toggle — переключает по нажатию, Hold — работает только пока клавиша зажата
ui.widget:bind_display() -> boolean
Показывать ли бинд в HUD «Клавиши»
ui.widget:set_bind_display(bool) -> nil
ui.widget:active() -> boolean
Текущее состояние бинда: для Hold — зажата ли клавиша
ui.checkbox(name, [default]) -> {get, set, visible}
ui.slider(name, [def], [min], [max], [step]) -> {get, set}
ui.combo(name, default, modes) -> {get, set, is, modes}
ui.multibox(name, options) -> {get, set}
Список { "A", "B" } или таблица с дефолтами { A = true, B = false }
ui.keybind(name, [defaultKey=0]) -> {get, set, held}
ui.color(name, [defaultRgba]) -> {get, set}
ui.button(name, fn)
Кнопка на модуле скрипта
ui.text(name, [default], [maxLength]) -> {get, set}
ui.screen(handlers) -> {open, close, is_open}
Собственный экран. Колбэки: on_render(mx,my), on_click(x,y,btn), on_release, on_scroll(x,y,delta), on_key(key,mods), on_char(ch), on_open, on_close. Поля: title, close_on_esc, blur_background, pauses_game
ui.close_screen()
Закрывает экран этого скрипта, если он открыт
ui.screen_open() -> bool
ui.draggable(id, x, y, w, h) -> drag
HUD-точка: двигается в общем редакторе и сохраняется в конфиг
drag.pos() -> x, y
Позиция элемента
drag.set_size(w, h) -> nil
Размер рамки. Обновляйте каждый кадр
drag.add_settings(w1, w2, ...) -> nil
Виджеты в контекстное меню элемента — ПКМ по нему в редакторе HUD
drag.anchor() -> string, string
К какому краю прижат элемент: left/right и top/bottom
drag.menu_open() -> boolean
Открыто ли меню элемента