local LibraryUrl = "https://raw.githubusercontent.com/Vovabro46/trash/refs/heads/main/Test.lua" local Success, Library = pcall(function() return loadstring(game:HttpGet(LibraryUrl))() end) if not Success or not Library then return warn("Ошибка загрузки библиотеки! Проверь ссылку или наличие файла на GitHub.") end local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local Workspace = game:GetService("Workspace") -- 1. Initialize the Window Library:Watermark("My Script Name | v1.0") local Window = Library:Window("My Script Hub") -- 2. Create a Tab -- Note: This library requires Tabs to contain SubTabs. Window:Section("Main Functions") local MainTab = Window:Tab("Main") Window:Section("Set Functions") local SettingsTab = Window:Tab("Settings") -- 3. Create a SubTab (Required hierarchy: Window -> Tab -> SubTab) local GeneralPage = MainTab:SubTab("General") local CombatPage = MainTab:SubTab("Combat") -- 4. Create Groupboxes (Containers for items) -- You can choose "Left" or "Right" side local FarmGroup = GeneralPage:Groupbox("Farming", "Left") local ExtraGroup = GeneralPage:Groupbox("Extras", "Right") local CombatGroup = CombatPage:Groupbox("pvp Settings", "Left") ------------------------------------------------------------------------- -- EXAMPLES OF FUNCTIONS (Adapted to your Source Code) ------------------------------------------------------------------------- -- LABEL & PARAGRAPH FarmGroup:AddLabel("Farming Status: Idle") FarmGroup:AddParagraph({ Title = "Instructions", Content = "babanahajnznajajnanzjzajnqmakzmamkamajzkzmamqajajzmma" }) FarmGroup:AddParagraph({ Title = "Instructions", Content = "Select a weapon and enable Auto Farm to start gaining levels correctly without any issues." }) -- 3. Long Paragraph FarmGroup:AddParagraph({ Title = "Warning", Content = "This is a very long text to test if the paragraph system is working correctly. It should wrap to multiple lines automatically based on the width of the box." }) -- TOGGLES (The examples) FarmGroup:AddToggle({ Title = "Auto Farm", Default = false, Flag = "AutoFarmFlag", -- Unique identifier for configs Callback = function(Value) print("Auto Farm is now:", Value) -- Your Auto Farm Loop here end }) FarmGroup:AddToggle({ Title = "Accept Quest", Default = true, Callback = function(Value) print("Auto Quest:", Value) end }) CombatGroup:AddToggle({ Title = "Auto Parry", Default = false, Callback = function(Value) print("Parry enabled:", Value) end }) CombatGroup:AddDropdown({ Title = "ESP Mode", Values = {"Box", "Tracer", "Highlight"}, Default = "Box", Description = "Choose tip for esp mode.", Callback = function(Value) print("ESP Type:", Value) end }) CombatGroup:AddTextbox({ Title = "Spam Chat", Placeholder = "Enter message...", ClearOnFocus = true, -- Clears text on click to make it easier to type new text Description = "The message that will be sent to the chat.", Callback = function(Value) print("Will spam:", Value) end }) CombatGroup:AddToggle({ Title = "Auto Attack", Default = false, Risky = true, -- Turns the text red to warn the user Description = "Automatically attacks players within a 15 herd radius.", -- Pop-up Description Callback = function(Value) print("Auto Attack:", Value) end }) CombatGroup:AddSlider({ Title = "WalkSpeed", Min = 16, Max = 250, Default = 16, Rounding = 0, Suffix = " studs", -- It will show "16 studs", "50 studs", etc. Description = "Changes the character's movement speed.", Callback = function(Value) game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = Value end }) CombatGroup:AddToggle({ Title = "Auto Attack", Default = false, Callback = function(Value) print("Auto Attack:", Value) end }) -- SLIDER CombatGroup:AddSlider({ Title = "Attack Distance", Min = 1, Max = 50, Default = 15, Rounding = 1, -- Decimals (0 = integer) Callback = function(Value) print("Distance set to:", Value) end }) -- DROPDOWN (Single) ExtraGroup:AddDropdown({ Title = "Weapon Select", Values = {"Sword", "Bow", "Magic"}, Default = "Sword", Multi = false, Callback = function(Value) print("Selected Weapon:", Value) end }) -- DROPDOWN (Multi) ExtraGroup:AddDropdown({ Title = "Target Priority", Values = {"Players", "NPCs", "Bosses"}, Default = {"NPCs"}, -- Note: Must be a table for Multi Multi = true, Callback = function(Value) -- Value returns a table like {Players = true, NPCs = false} for k, v in pairs(Value) do if v then print(k, "is selected") end end end }) -- COLOR PICKER ExtraGroup:AddColorPicker({ Title = "ESP Color", Default = Color3.fromRGB(255, 0, 0), Callback = function(Value) print("New Color:", Value) end }) -- KEYBIND CombatGroup:AddKeybind({ Title = "Kill Aura Bind", Default = Enum.KeyCode.R, Callback = function(Key) print("Key pressed:", Key) end }) -- TEXTBOX ExtraGroup:AddTextbox({ Title = "Custom Message", Placeholder = "Enter text...", Callback = function(Text) print("User typed:", Text) end }) -- BUTTON ExtraGroup:AddButton({ Title = "Server Hop", Callback = function() print("Hopping server...") end }) -- CONFIG SYSTEM (Built into the library) local SettingsPage = SettingsTab:SubTab("Menu Settings") -- >> CONFIG MANAGER << local ConfigGroup = SettingsPage:Groupbox("Configuration", "Left") local Configs = Library:GetConfigs() ConfigGroup:AddDropdown({ Title = "Select Config", Values = Configs, Default = "default", Multi = false, Flag = "SelectedConfig", Callback = function(Value) end }) ConfigGroup:AddTextbox({ Title = "New Config Name", Placeholder = "Type name...", Flag = "NewConfigName", Callback = function(Value) end }) ConfigGroup:AddButton({ Title = "Load Selected", Callback = function() local name = Library.Flags["SelectedConfig"] if name then Library:LoadConfig(name) else Library:Notify("Error", "No config selected!", 3) end end }) ConfigGroup:AddButton({ Title = "Save Config", Callback = function() local name = Library.Flags["NewConfigName"] if name == "" or name == nil then name = Library.Flags["SelectedConfig"] end if name and name ~= "" then Library:SaveConfig(name) local NewList = Library:GetConfigs() if Library.Items["SelectedConfig"] then Library.Items["SelectedConfig"].Refresh(NewList) end else Library:Notify("Error", "Enter a name or select a config!", 3) end end }) ConfigGroup:AddButton({ Title = "Refresh List", Callback = function() local NewList = Library:GetConfigs() if Library.Items["SelectedConfig"] then Library.Items["SelectedConfig"].Refresh(NewList) end Library:Notify("Configs", "List refreshed", 2) end }) -- >> THEME MANAGER << local ThemeGroup = SettingsPage:Groupbox("Theme Manager", "Right") ThemeGroup:AddLabel("Main Colors") ThemeGroup:AddColorPicker({ Title = "Accent Color", Default = Library.Theme.Accent, Flag = "ThemeAccent", Callback = function(Value) Library:UpdateTheme("Accent", Value) end }) ThemeGroup:AddColorPicker({ Title = "Background", Default = Library.Theme.Background, Flag = "ThemeBackground", Callback = function(Value) Library:UpdateTheme("Background", Value) end }) ThemeGroup:AddColorPicker({ Title = "Sidebar", Default = Library.Theme.Sidebar, Flag = "ThemeSidebar", Callback = function(Value) Library:UpdateTheme("Sidebar", Value) end }) ThemeGroup:AddColorPicker({ Title = "Groupbox", Default = Library.Theme.Groupbox, Flag = "ThemeGroupbox", Callback = function(Value) Library:UpdateTheme("Groupbox", Value) end }) ThemeGroup:AddLabel("Text & Outlines") ThemeGroup:AddColorPicker({ Title = "Main Text", Default = Library.Theme.Text, Flag = "ThemeText", Callback = function(Value) Library:UpdateTheme("Text", Value) end }) ThemeGroup:AddColorPicker({ Title = "Secondary Text", Default = Library.Theme.TextDark, Flag = "ThemeTextDark", Callback = function(Value) Library:UpdateTheme("TextDark", Value) end }) ThemeGroup:AddColorPicker({ Title = "Outline/Stroke", Default = Library.Theme.Outline, Flag = "ThemeOutline", Callback = function(Value) Library:UpdateTheme("Outline", Value) end }) ThemeGroup:AddButton({ Title = "Reset Theme to Default", Callback = function() Library:UpdateTheme("Background", Color3.fromRGB(15, 15, 15)) Library:UpdateTheme("Sidebar", Color3.fromRGB(20, 20, 20)) Library:UpdateTheme("Groupbox", Color3.fromRGB(25, 25, 25)) Library:UpdateTheme("Outline", Color3.fromRGB(45, 45, 45)) Library:UpdateTheme("Accent", Color3.fromRGB(255, 40, 40)) Library:UpdateTheme("Text", Color3.fromRGB(235, 235, 235)) Library:UpdateTheme("TextDark", Color3.fromRGB(140, 140, 140)) Library:Notify("Theme", "Colors reset to default", 2) end }) -- >> (Under Theme Manager) : UI SETTINGS << local UISettings = SettingsPage:Groupbox("UI Settings", "Right") UISettings:AddToggle({ Title = "Show Watermark", Default = true, Flag = "WatermarkToggle", Callback = function(Value) Library.WatermarkSettings.Enabled = Value end }) UISettings:AddTextbox({ Title = "Watermark Text", Default = "RedOnyx V17", -- или ваше название Placeholder = "Enter text...", ClearOnFocus = false, Callback = function(Value) Library.WatermarkSettings.Text = Value end }) -- Кнопка для быстрой выгрузки интерфейса (полезно) UISettings:AddButton({ Title = "Unload / Destroy UI", Callback = function() local gui = game:GetService("CoreGui"):FindFirstChild("RedOnyxV17") local water = game:GetService("CoreGui"):FindFirstChild("Watermark") if gui then gui:Destroy() end if water then water:Destroy() end end })