- Выберите плейс
- 3008
- 99 Nights in the Forest
- Answer or Die
- Adopt Me
- Anime Rangers X
- Anime Vanguards
- Arise
- Arsenal
- Basketball Zero
- BedWars
- Bee Swarm Simulator
- Berry Avenue RP
- Blade Ball
- Blox Fruits
- Blue Lock: Rivals
- Brainrot Evolution
- Break In
- Brookhaven RP
- Bubble Gum Simulator
- Build A Boat For Treasure
- Catalog Avatar Creator
- Climb and Jump Tower
- Counter Blox
- Casual Stock
- Combat Warriors
- Da Hood
- Dusty Trip
- Dandy’s World
- Death Ball
- Dead Rails
- Doors
- Dress To Impress
- Evade
- Fling Things and People
- Forsaken
- Fisch
- Grow A Garden
- Hero Of Hell (Anime Last Stand)
- Jailbreak
- King Legacy
- Lumber Tycoon 2
- Mining Tycoon
- Murder Mystery 2
- Mining Simulator 2
- Muscle Legends
- Natural Disaster Survival
- PC Tycoon Project EVO
- Pet Simulator
- Prison Life
- Pressure
- Phantom Forces
- Piggy
- PLS Donate
- Ro Ghoul
- Residence Massacre
- Rivals
- Shrimp Game
- Slap Tower 3
- Sol’s RNG
- Steal a Brainrot
- Trident Survival
- The Strongest Battlegrounds
- Toilet Tower Defense
- Tower Defense Simulator
- Tower of Hell
- Victory Race
- Volleyball Legends
- War Tycoon
- Work at a Pizza Place
Возможно вы часто видели в разных скриптах, по совместительству бесплатных скриптов с ютуба или тематических сайтов в скриптами, и задавались вопросом, как сделать такое же меню в свой скрипт?
Сегодня мы поговорим о одной из самых популярных на данный момент, а также одной из самых красивых по сравнению с другими
Возможности данной библиотеки:
SaveManager - Менеджер конфигураций скрипта:
Название конфига, список конфигов, сохранить конфиг, загрузить конфиг, перезаписать конфиг, перезапустить список конфигураций, поставить конфиг в автозагрузку
InterfaceManager - Меняйте цвет, и сам внешний вид интерфейса скрипта, а также бинд на открытие и закрытие
Создание Toggle(вкл/выкл)
Создание кнопки, при нажатии вызывает callback
Вкладки(Tabs)
Параграфы, простой текстовый блок с заголовком и несколькими строками
Поддержка иконок Lucide
Уведомления, всплывающее уведомление с таймером (или без, если Duration = nil)
Слайдеры, методы:
Colorpicker, методы:
Keybinds, режимы: "Always", "Toggle", "Hold"; методы:
Input, поле ввода. Методы:
Dropdown,
Выгрузка UI, через
Пример использования:
Сегодня мы поговорим о одной из самых популярных на данный момент, а также одной из самых красивых по сравнению с другими
Пожалуйста, авторизуйтесь для просмотра ссылки.
Возможности данной библиотеки:
SaveManager - Менеджер конфигураций скрипта:
Название конфига, список конфигов, сохранить конфиг, загрузить конфиг, перезаписать конфиг, перезапустить список конфигураций, поставить конфиг в автозагрузку
InterfaceManager - Меняйте цвет, и сам внешний вид интерфейса скрипта, а также бинд на открытие и закрытие
Создание Toggle(вкл/выкл)
Создание кнопки, при нажатии вызывает callback
Вкладки(Tabs)
Параграфы, простой текстовый блок с заголовком и несколькими строками
Поддержка иконок Lucide
Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)Уведомления, всплывающее уведомление с таймером (или без, если Duration = nil)
Слайдеры, методы:
Slider:OnChanged(function(Value) ... end) или Slider:SetValue(x)Colorpicker, методы:
Colorpicker:SetValueRGB(Color3.fromRGB(...)) , :OnChanged(function() ... end), поддерживает прозрачностьKeybinds, режимы: "Always", "Toggle", "Hold"; методы:
Keybind:GetState(), Keybind:SetValue("Key", "Mode"), Keybind:OnClick(function() ... end), Keybind:OnChanged(function() ... end)Input, поле ввода. Методы:
Input:OnChanged(function() ... end), поддерживает такие возможности как, только числа (Numeric = true), вызов только по Enter (Finished = true)Dropdown,
Tab:AddDropdown("ID", { Title, Values, Multi, Default }). Поддерживает одиночный (Multi = false) и множественный выбор (Multi = true) Методы: Dropdown:SetValue("option"), MultiDropdown:SetValue({option = true/false, ...}), :OnChanged(function(Value) ... end)Выгрузка UI, через
Fluent.UnloadedПример использования:
Код:
local Fluent = loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))()
local SaveManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/SaveManager.lua"))()
local InterfaceManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/InterfaceManager.lua"))()
local Window = Fluent:CreateWindow({
Title = "Fluent " .. Fluent.Version,
SubTitle = "by dawid",
TabWidth = 160,
Size = UDim2.fromOffset(580, 460),
Acrylic = true, -- The blur may be detectable, setting this to false disables blur entirely
Theme = "Dark",
MinimizeKey = Enum.KeyCode.LeftControl -- Used when theres no MinimizeKeybind
})
--Fluent provides Lucide Icons https://lucide.dev/icons/ for the tabs, icons are optional
local Tabs = {
Main = Window:AddTab({ Title = "Main", Icon = "" }),
Settings = Window:AddTab({ Title = "Settings", Icon = "settings" })
}
local Options = Fluent.Options
do
Fluent:Notify({
Title = "Notification",
Content = "This is a notification",
SubContent = "SubContent", -- Optional
Duration = 5 -- Set to nil to make the notification not disappear
})
Tabs.Main:AddParagraph({
Title = "Paragraph",
Content = "This is a paragraph.\nSecond line!"
})
Tabs.Main:AddButton({
Title = "Button",
Description = "Very important button",
Callback = function()
Window:Dialog({
Title = "Title",
Content = "This is a dialog",
Buttons = {
{
Title = "Confirm",
Callback = function()
print("Confirmed the dialog.")
end
},
{
Title = "Cancel",
Callback = function()
print("Cancelled the dialog.")
end
}
}
})
end
})
local Toggle = Tabs.Main:AddToggle("MyToggle", {Title = "Toggle", Default = false })
Toggle:OnChanged(function()
print("Toggle changed:", Options.MyToggle.Value)
end)
Options.MyToggle:SetValue(false)
local Slider = Tabs.Main:AddSlider("Slider", {
Title = "Slider",
Description = "This is a slider",
Default = 2,
Min = 0,
Max = 5,
Rounding = 1,
Callback = function(Value)
print("Slider was changed:", Value)
end
})
Slider:OnChanged(function(Value)
print("Slider changed:", Value)
end)
Slider:SetValue(3)
local Dropdown = Tabs.Main:AddDropdown("Dropdown", {
Title = "Dropdown",
Values = {"one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen"},
Multi = false,
Default = 1,
})
Dropdown:SetValue("four")
Dropdown:OnChanged(function(Value)
print("Dropdown changed:", Value)
end)
local MultiDropdown = Tabs.Main:AddDropdown("MultiDropdown", {
Title = "Dropdown",
Description = "You can select multiple values.",
Values = {"one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen"},
Multi = true,
Default = {"seven", "twelve"},
})
MultiDropdown:SetValue({
three = true,
five = true,
seven = false
})
MultiDropdown:OnChanged(function(Value)
local Values = {}
for Value, State in next, Value do
table.insert(Values, Value)
end
print("Mutlidropdown changed:", table.concat(Values, ", "))
end)
local Colorpicker = Tabs.Main:AddColorpicker("Colorpicker", {
Title = "Colorpicker",
Default = Color3.fromRGB(96, 205, 255)
})
Colorpicker:OnChanged(function()
print("Colorpicker changed:", Colorpicker.Value)
end)
Colorpicker:SetValueRGB(Color3.fromRGB(0, 255, 140))
local TColorpicker = Tabs.Main:AddColorpicker("TransparencyColorpicker", {
Title = "Colorpicker",
Description = "but you can change the transparency.",
Transparency = 0,
Default = Color3.fromRGB(96, 205, 255)
})
TColorpicker:OnChanged(function()
print(
"TColorpicker changed:", TColorpicker.Value,
"Transparency:", TColorpicker.Transparency
)
end)
local Keybind = Tabs.Main:AddKeybind("Keybind", {
Title = "KeyBind",
Mode = "Toggle", -- Always, Toggle, Hold
Default = "LeftControl", -- String as the name of the keybind (MB1, MB2 for mouse buttons)
-- Occurs when the keybind is clicked, Value is `true`/`false`
Callback = function(Value)
print("Keybind clicked!", Value)
end,
-- Occurs when the keybind itself is changed, `New` is a KeyCode Enum OR a UserInputType Enum
ChangedCallback = function(New)
print("Keybind changed!", New)
end
})
-- OnClick is only fired when you press the keybind and the mode is Toggle
-- Otherwise, you will have to use Keybind:GetState()
Keybind:OnClick(function()
print("Keybind clicked:", Keybind:GetState())
end)
Keybind:OnChanged(function()
print("Keybind changed:", Keybind.Value)
end)
task.spawn(function()
while true do
wait(1)
-- example for checking if a keybind is being pressed
local state = Keybind:GetState()
if state then
print("Keybind is being held down")
end
if Fluent.Unloaded then break end
end
end)
Keybind:SetValue("MB2", "Toggle") -- Sets keybind to MB2, mode to Hold
local Input = Tabs.Main:AddInput("Input", {
Title = "Input",
Default = "Default",
Placeholder = "Placeholder",
Numeric = false, -- Only allows numbers
Finished = false, -- Only calls callback when you press enter
Callback = function(Value)
print("Input changed:", Value)
end
})
Input:OnChanged(function()
print("Input updated:", Input.Value)
end)
end
-- Addons:
-- SaveManager (Allows you to have a configuration system)
-- InterfaceManager (Allows you to have a interface managment system)
-- Hand the library over to our managers
SaveManager:SetLibrary(Fluent)
InterfaceManager:SetLibrary(Fluent)
-- Ignore keys that are used by ThemeManager.
-- (we dont want configs to save themes, do we?)
SaveManager:IgnoreThemeSettings()
-- You can add indexes of elements the save manager should ignore
SaveManager:SetIgnoreIndexes({})
-- use case for doing it this way:
-- a script hub could have themes in a global folder
-- and game configs in a separate folder per game
InterfaceManager:SetFolder("FluentScriptHub")
SaveManager:SetFolder("FluentScriptHub/specific-game")
InterfaceManager:BuildInterfaceSection(Tabs.Settings)
SaveManager:BuildConfigSection(Tabs.Settings)
Window:SelectTab(1)
Fluent:Notify({
Title = "Fluent",
Content = "The script has been loaded.",
Duration = 8
})
-- You can use the SaveManager:LoadAutoloadConfig() to load a config
-- which has been marked to be one that auto loads!
SaveManager:LoadAutoloadConfig()
Исходный код библиотеки
Кратко говоря, что нам дает библиотека
Многоуровневый UI (окно → вкладки → элементы)
Полный набор элементов управления (кнопки, тогглы, слайдеры, дропдауны, кейбинды, инпуты, колорпикеры)
Уведомления и диалоги
Открытый сурс код
Система конфигов и тем
Поддержка прозрачности, разные темы темы
Сохранение параметров между сессиями
Полная поддержка практически всех нынешних executor'ов, как Android/iOS, так и пк
Пожалуйста, авторизуйтесь для просмотра ссылки.
Кратко говоря, что нам дает библиотека
Многоуровневый UI (окно → вкладки → элементы)
Полный набор элементов управления (кнопки, тогглы, слайдеры, дропдауны, кейбинды, инпуты, колорпикеры)
Уведомления и диалоги
Открытый сурс код
Система конфигов и тем
Поддержка прозрачности, разные темы темы
Сохранение параметров между сессиями
Полная поддержка практически всех нынешних executor'ов, как Android/iOS, так и пк