Skip to content

Latest commit

 

History

History
112 lines (73 loc) · 5.15 KB

File metadata and controls

112 lines (73 loc) · 5.15 KB

Mantle

🎈 Универсальная библиотека GLua для Garry's Mod: создание интерфейсов и удобные утилиты.

Весь код снабжён комментариями - изучайте и находите примеры прямо в исходниках. Также есть эксперимент с UI в стиле macOS, кому интересно посмотрите ветку new-design

Возможности

  • Кастомные VGUI-элементы
  • Быстрый рендеринг через RNDX
  • Загрузка материалов по ссылке
  • Гибкая система цветовых тем
  • Уведомления для игроков на сервера
  • Модульная архитектура
  • Поддержка кириллицы и UTF-8
  • Единое меню с документацией и настройками

Меню библиотеки

Имеется меню с документацией и настройками. Для открытия используйте консольную команду: mantle_menu.

Примеры компонентов

Документация и элементы VGUI

image

Лёгкий режим окна

image

ComboBox

image

SlideBox

image

Таблицы

image

Поле ввода

image

Всплывающие элементы

image

Круговое меню

image

Опциональное меню

image

Цветовые темы

image image image image image image

И главное - плавность и магия анимаций

video.mp4

Сторонние примеры

Отправка серверных уведомлений

hook.Add('PlayerSpawn', 'Test', function(pl)
    Mantle.notify(pl, Color(75, 0, 0), 'Заголовок', 'Привет, ' .. pl:Name() .. '!')
    -- первым аргументом true, в случае отправки всем игрокам
end)

Картинка через ссылку

http.DownloadMaterial('https://i.imgur.com/eEnGbcp.jpeg', 'dog.png', function(your_mat)
    hook.Add('HUDPaint', 'Test', function()
        surface.SetDrawColor(255, 255, 255)
        surface.SetMaterial(your_mat)
        surface.DrawTexturedRect(5, 5, 250, 330)
    end)
end)

Преобразование символов кириллицы

hook.Add('HUDPaint', 'test', function()
    local txt = 'ПриВЕТ МИР Hello World'
    -- default
    draw.SimpleText(string.lower(txt), 'Fated.20', 15, 15, color_black)
    -- mantle
    draw.SimpleText(utf8.lower(txt), 'Fated.20', 15, 35, color_black)
end)
Сравнение default и mantle функции

Steam Workshop

Для автообновления – подпишитесь и добавьте аддон в серверную коллекцию. Таким образом сможете всегда получать актуальную версию библиотеки ✅