Advertisement
FUNKYOU999

Untitled

Jul 3rd, 2025
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.98 KB | None | 0 0
  1. -- Simplified GUI Library compatible with Meteor Script
  2. -- Clean structure, same API: CreateWindow, CreateTab, CreateToggle, CreateOptionTog, CreateDropDown
  3.  
  4. local lib = {}
  5. local Players = game:GetService("Players")
  6. local CoreGui = game:GetService("CoreGui")
  7. local LocalPlayer = Players.LocalPlayer
  8.  
  9. -- Root GUI
  10. local ScreenGui = Instance.new("ScreenGui")
  11. ScreenGui.Name = "RektskyGui"
  12. ScreenGui.ResetOnSpawn = false
  13. ScreenGui.Parent = CoreGui
  14.  
  15. -- Store active toggles/tabs
  16. lib.Tabs = {}
  17. lib.Objects = {}
  18.  
  19. function lib:CreateWindow()
  20.     return lib
  21. end
  22.  
  23. function lib:CreateTab(name, color, icon)
  24.     local tab = {}
  25.     tab.Toggles = {}
  26.  
  27.     function tab:CreateToggle(data)
  28.         local toggle = {
  29.             Name = data.Name,
  30.             Value = false,
  31.             Callback = data.Callback or function() end
  32.         }
  33.  
  34.         function toggle:Toggle(val)
  35.             self.Value = (val ~= nil) and val or not self.Value
  36.             toggle.Callback(self.Value)
  37.         end
  38.  
  39.         table.insert(tab.Toggles, toggle)
  40.         return toggle
  41.     end
  42.  
  43.     function tab:CreateOptionTog(data)
  44.         local opt = {
  45.             Name = data.Name,
  46.             Value = data.Default or false,
  47.             Callback = data.Func or function() end
  48.         }
  49.  
  50.         function opt:Toggle(val)
  51.             self.Value = (val ~= nil) and val or not self.Value
  52.             self.Callback(self.Value)
  53.         end
  54.  
  55.         return opt
  56.     end
  57.  
  58.     function tab:CreateDropDown(data)
  59.         local drop = {
  60.             Name = data.Name,
  61.             List = data.List,
  62.             Value = data.Default or data.List[1],
  63.             Callback = data.Function or data.Func or function() end
  64.         }
  65.  
  66.         function drop:Select(value)
  67.             if table.find(drop.List, value) then
  68.                 drop.Value = value
  69.                 drop.Callback(value)
  70.             end
  71.         end
  72.  
  73.         return drop
  74.     end
  75.  
  76.     table.insert(lib.Tabs, tab)
  77.     return tab
  78. end
  79.  
  80. return lib
  81.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement