
Keyless

--[[
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"])No comments yet for this script.