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

render

2D и 3D рисование: фигуры, текст шрифтами клиента, картинки, блюр, тема.

Разбор с примерами — Фигуры и текст.

render.rect(x, y, w, h, [rgba])
render.rounded_rect(x, y, w, h, [radius], [rgba])
render.outline_rect(x, y, w, h, [radius], [rgba], [thickness])
render.gradient_rect(x, y, w, h, c1, c2, c3, c4)
Цвета углов: левый-верх, правый-верх, правый-низ, левый-низ
render.gradient_rounded_rect(x, y, w, h, radius, c1, c2, c3, c4)
render.circle(cx, cy, radius, [rgba])
render.soft_circle(cx, cy, radius, [rgba])
Круг со сглаженным краем
render.arc(cx, cy, inner, outer, startDeg, endDeg, [c1], [c2])
Кольцевой сектор — прогресс-круги, радары
render.blur(x, y, w, h, [radius], [blur])
Размытие фона под областью
render.glass(x, y, w, h, [radius])
render.bloom(x, y, w, h, [blur], [radius], [rgba])
render.text(text, x, y, [rgba], [shadow])
Шрифт Minecraft, §-коды экранируются
render.text_mc(text, x, y, [rgba], [shadow])
Minecraft-форматирование: § и & как цветовые коды
render.font_text(text, x, y, [rgba], [size=8], [family])
Шрифты клиента: "medium" | "bold" | "light" | "regular" | "consolas"
render.font_text_centered(text, cx, y, [rgba], [size], [family])
render.font_width(text, [size], [family]) -> number
render.font_height(size, family) -> number
Высота заглавной буквы. Полная высота строки — render.font_line_height
render.text_width(text) -> number
render.text_height() -> number
render.is_mc_text(text) -> bool
render.strip_mc(text) -> string
render.svg(icon, x, y, w, h [, color]) -> nil
Иконка из render.icons() или путь из render.load_svg()
render.item(itemId, x, y)
render.texture(identifier, x, y, w, h, [rgba])
render.push_clip(x, y, w, h)
Обрезка. Незакрытые клипы снимаются автоматически в конце кадра
render.pop_clip()
render.hovered(mx, my, x, y, w, h) -> bool
render.anim(target, current, [speed]) -> number
Плавное приближение к значению, вызывать каждый кадр
render.screen_size() -> w, h
render.theme() -> table
Палитра активной темы: main, secondary, background, border, text, text_active, text_inactive, hover, alpha, blur_radius, rounding
render.rgba(r, g, b, [a]) -> int
render.unpack_rgba(color) -> r, g, b, a
render.with_alpha(color, alpha) -> int
render.hsb(h, s, b, [a]) -> int
render.mix(from, to, k) -> int
render.box3d(x1,y1,z1, x2,y2,z2, [rgba], [w], [out], [fill])
Только в render3d
render.line3d(x1,y1,z1, x2,y2,z2, [rgba], [w])
Только в render3d
render.camera_ray([distance=75]) -> x, y, z
render.world_to_screen(x, y, z) -> sx, sy, depth
render.rect_style(x, y, w, h [, radius]) -> nil
Панель в стиле активной темы: блюр или стекло плюс фон
render.rounded_rect_ex(x, y, w, h, tl, tr, br, bl, color) -> nil
Скругление по каждому углу отдельно
render.line(x1, y1, x2, y2, color, thickness) -> nil
Линия заданной толщины
render.triangle(x1, y1, x2, y2, x3, y3, color, thickness) -> nil
Контур треугольника
render.push_matrix() -> nil
Сохранить матрицу. Забытый pop снимается в конце кадра
render.pop_matrix() -> nil
Вернуть матрицу
render.translate(x, y) -> nil
Сдвиг системы координат
render.scale(sx [, sy]) -> nil
Масштаб системы координат
render.scale_at(cx, cy, scale [, scale_y]) -> nil
Масштаб вокруг точки — появление элемента
render.rotate(degrees [, cx, cy]) -> nil
Поворот по часовой стрелке
render.font_text_middle(text, x, cy, color, size, family) -> nil
Текст по вертикальному центру: cy — середина строки
render.font_text_box(text, x, y, w, h, color, size, family) -> nil
Текст по центру прямоугольника
render.font_text_shadow(text, x, y, color, size, family) -> nil
Текст с тенью
render.font_text_outline(text, x, y, color, outline, size, family) -> nil
Текст с обводкой — читается на любом фоне
render.font_line_height(size, family) -> number
Полная высота строки шрифта с запасами
render.font_ascent(size, family) -> number
Расстояние от базовой линии вверх
render.font_ink_height(text, size, family) -> number
Высота реальных чернил конкретной строки
render.ellipsis(text, maxWidth, size, family) -> string
Обрезка по ширине с многоточием
render.text_wrap(text, maxWidth, size, family) -> table
Перенос по словам, возвращает таблицу строк
render.load_svg(source) -> string
SVG прямо в скрипте, возвращает путь для render.svg. Кэш по содержимому
render.icons() -> table
Иконки клиента: KEYBOARD, POTIONS, USERS, COOLDOWN, WIFI, SIGNAL, MUSIC
render.image(url, x, y, w, h [, color, rounding]) -> boolean
Картинка по ссылке, грузится в фоне: первый кадр возвращает false
render.avatar(userId, x, y, size [, color, fallbackUrl]) -> boolean
Аватар пользователя клиента
render.entity_head(entityId, x, y, size [, radius, color]) -> nil
Голова сущности из её скина, со скруглением
render.animate(key, target, speed) -> number
Именованная анимация: значение живёт между кадрами, шаг по времени кадра
render.animate_reset([key]) -> nil
Сбросить одну анимацию или все
render.delta() -> number
Время кадра в секундах
render.push_hud_scale() -> nil
Масштаб HUD из настроек клиента. Обязателен для всего на ui.draggable
render.pop_hud_scale() -> nil
Вернуть масштаб экрана
render.hud_scale() -> number
Текущий множитель HUD
render.hud_size() -> w, h
Размер экрана в координатах HUD