GUI Lib для CC: Tweaked





GUI Dock's by Zif_Tech © 2025


Данная библиотека предназначена для виузального управления вашими проектами или механизмами с помощью различных графических элементов. Библиотека дает вам возможность создавать уникальные интерфейсы для всего и вся. хотите зделать панель управления домом, фермами, реактором из модов в конце концов? это все возможно. А может хотите информациооное табло? тоже не проблема. написал все один раз и кайфуешь

123 123 123 123 123 123

Если вы нашли ошибку, недачет или момент который можжет улучшить библиотеку для всех пишите сюда Discord. Мой ник Lord_Zif_Tech.


вставте вот эту ссылку в ваш терминал wget https://raw.githubusercontent.com/lord-Vampirion-Tech/cct-gui-lib/main/gui.lua gui.lua и библиотека успешно установится с репозиторя Git Hub https://github.com/lord-Vampirion-Tech/cct-gui-lib к вам на устройство.

в своей программе просто пропишите local gui = dofile("gui.lua") и можете пользоватся всеми благами библиотеки. Все модули, предоставляемые библиотекой, отображаются в боковой панели.


есть свойства которые есть у всех объектов по стандарту. а также функции которые есть у всех объектов, но у каждого разное поведение


Свойства

свойство описание
self.mon = mon or term монитор на котором будет отображатся объект
self.pos = pos or {1, 1} позиция объекта на экране
self.type = "Base" тип объекта. полезно для массовой работы с объектами
self.visible = true тип объекта. полезно для массовой работы с объектами
self.owner = owner or nil используется для наследования цветов между обьектами
название значение
B_Back colors.black
B_Text colors.white
Label
l_back colors.gray
l_text colors.white
Frame and Table
f_back colors.black
f_text colors.white
f_frame_back colors.gray
f_frame_text colors.white
Button, CheckBox, RadioButton
tg_base_back colors.gray
tg_base_text colors.white
tg_active_back colors.green
tg_active_text colors.black
tg_locked_back colors.red
tg_locked_text colors.yellow
Range
pb_back colors.gray
pb_used colors.green
pb_locked colors.red
pb_dot white
Text area and input
t_base_back colors.gray
t_base_text colors.lightGray
t_locked_back colors.red
t_locked_text colors.black
t_active_back colors.gray
t_active_text colors.white
t_dot colors.white

методы

название описание
:print() отобразить элемент на экране. А если какието параметры изменились то это его обновит
:add(name,...) добавить элемент в группу под определенным именем. если имя не нужно то передовать названия групп в таблице, иначе просто через запятую. тогда первй элемент будет именем объекта. имена не могут повтарятся
:setproperty(prop,val) изменить какое нибуть свойство при создании объекта

функции доступные в библиотеке бонусом

название описание
Write(mon, pos, text, align) ресует текст в данной позиции
gui.setcolors(colorsTable) заменить базовые цвета для всех элементов
math.round(val) округляет число по правилам математики

  • mon - мониторм где нарисовать текст
  • pos - позиция где нарисовать текст
  • text - то что нарисовать
  • align - по умольчанию равно {1,1}. отвечает за то как нарисовать текст
    • align[2] - нарисовать текст горизонтально (1), или вертикально (2)
    • align[1] - нарисовать текст относительно позиции слева (1), по середине (2), или слева (3) от позиции. (при align[2] = 2, align[1] работает вниз, по середние, в верх соответствено)
-- рисуем текст "lol" по X=1 и Y=1
Write(term,{1,1},"lol")

--можно выбрать ориентацию тексто около позиции
Write(term,{1,1},"text!",{1,1}) -- справа    
Write(term,{1,1},"text!",{2,1}) -- по середине
Write(term,{1,1},"text!",{3,1}) -- сдева

-- и также по вертикали
Write(term,{1,1},"text!",{1,2}) -- снизу  
Write(term,{1,1},"text!",{2,2}) -- по середине
Write(term,{1,1},"text!",{3,2}) -- сверху

  • colorsTable - таблица (ключ - значения) для замены базовы цветов для ВСЕХ объектов
-- можно сделать чтоы базовый фон для все Label будет красным
gui.setColor{
    l_back = colord.red
}

-- или сразу несколько изменения
gui.setColor{
    l_text = colord.yellow,
    f_text = colord.yellow,
    tg_base_text = colord.yellow,
    t_base_text  = colord.yellow,
}

gui.Manager - массив объектов объеденённых под общим именем. используется для массового влияние на обьекты

Метод Описание
:callAll(name, action, ...) вызвоть метод у определенной группы, и заадно передать в нее параметры
:get(name) получить обьект по имени если такой существует

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация


описание

Метод Описание
метод описание метода

полная запись функции

-- создаем объект типа Label
local Label = {...}

-- а затем добавляем его в группу base
GUI.Manager:add(Label, "base")

доп. информация