--[[ Meowl Collector Hub - Made with Linorial (Obsidian UI) 100% working - Teleports to every Meowl individually when you click its button (ALPHABETICAL ORDER) ]] local repo = "https://raw.githubusercontent.com/deividcomsono/Obsidian/main/" local Library = loadstring(game:HttpGet(repo .. "Library.lua"))() local ThemeManager = loadstring(game:HttpGet(repo .. "addons/ThemeManager.lua"))() local SaveManager = loadstring(game:HttpGet(repo .. "addons/SaveManager.lua"))() local Window = Library:CreateWindow({ Title = "Meowl Collector 😼", Footer = "100 Meowls | Alphabetical Order", NotifySide = "Right", ShowCustomCursor = true, }) local Tabs = { Meowls = Window:AddTab("Meowls", "cat"), ["UI Settings"] = Window:AddTab("UI Settings", "settings"), } -- Left side - Auto collect all local autoGroup = Tabs.Meowls:AddLeftGroupbox("Auto Collect") autoGroup:AddButton({ Text = "Collect ALL 100 Meowls (0.3s delay)", Func = function() local player = game.Players.LocalPlayer local char = player.Character or player.CharacterAdded:Wait() local hrp = char:WaitForChild("HumanoidRootPart") local folder = workspace:WaitForChild("Meowls") local oldCFrame = hrp.CFrame local count = 0 for _, model in ipairs(folder:GetChildren()) do if model:IsA("Model") then local hitbox = model:FindFirstChild("Hitbox") or model:FindFirstChildWhichIsA("BasePart") if hitbox and hitbox.Parent then hrp.CFrame = hitbox.CFrame count += 1 task.wait(0.3) end end end hrp.CFrame = oldCFrame Library:Notify("Collected " .. count .. "/100 Meowls! 😼") end, }) -- Right side - Individual Meowls (Alphabetical) local individualGroup = Tabs.Meowls:AddRightGroupbox("Individual Meowls (Click to TP)") local meowlModels = {} for _, model in ipairs(workspace.Meowls:GetChildren()) do if model:IsA("Model") then table.insert(meowlModels, model) end end -- Sort alphabetically by model.Name table.sort(meowlModels, function(a, b) return a.Name:lower() < b.Name:lower() end) for _, model in ipairs(meowlModels) do local displayName = model.Name .. " Meowl" individualGroup:AddButton({ Text = displayName, Func = function() local player = game.Players.LocalPlayer local char = player.Character or player.CharacterAdded:Wait() local hrp = char:WaitForChild("HumanoidRootPart") local hitbox = model:FindFirstChild("Hitbox") or model:FindFirstChildWhichIsA("BasePart") if hitbox then hrp.CFrame = hitbox.CFrame Library:Notify("Teleported to " .. displayName .. "!") end end, }) end Library:Notify("Loaded " .. #meowlModels .. " Meowls (Alphabetical)!") -- UI Settings ThemeManager:SetLibrary(Library) SaveManager:SetLibrary(Library) SaveManager:IgnoreThemeSettings() SaveManager:SetIgnoreIndexes({ "MenuKeybind" }) ThemeManager:SetFolder("MeowlCollector") SaveManager:SetFolder("MeowlCollector") SaveManager:BuildConfigSection(Tabs["UI Settings"]) ThemeManager:ApplyToTab(Tabs["UI Settings"])