local NothingLibrary = loadstring(
    game:HttpGetAsync(
        'https://[Log in to view URL]'
    )
)()
local Windows = NothingLibrary.new({
    Title = 'DAH HOOD GUI',
    Description = 'Dah Best One Yet',
    Keybind = Enum.KeyCode.LeftControl,
    Logo = 'http://[Log in to view URL]',
})
local Notification = NothingLibrary.Notification()

Notification.new({
    Title = 'Notification',
    Description = 'enjoy :) working in progress',
    Duration = 5,
    Icon = 'rbxassetid://8997385628',
})
local TabFrame = Windows:NewTab({
    Title = 'MISC',
    Description = 'lots of features',
    Icon = 'rbxassetid://7733960981',
})
local Section = TabFrame:NewSection({
    Title = 'Teleport ',
    Icon = 'rbxassetid://7743869054',
    Position = 'Left',
})

-- Campfire
Section:NewButton({
    Title = 'Campfire',
    Callback = function()
        local Players = game:GetService('Players')
        local player = Players.LocalPlayer
        local character = player.Character or player.CharacterAdded:Wait()

        -- Coordinates to teleport to
        local waypoint = Vector3.new(-6.61, 4.00, 13.50)

        -- Function to get HumanoidRootPart
        local function getRoot()
            character = player.Character or player.CharacterAdded:Wait()
            return character:WaitForChild('HumanoidRootPart')
        end

        -- Teleport function (MAIN FUNCTION)
        local function teleportToWaypoint()
            local root = getRoot()
            root.CFrame = CFrame.new(waypoint)
        end

        -- Run the function once (automatically)
        teleportToWaypoint()
    end,
})

-- logs

Section:NewButton({
    Title = 'Log',
    Callback = function()
        local Players = game:GetService('Players')
        local player = Players.LocalPlayer
        local character = player.Character or player.CharacterAdded:Wait()

        -- Wait for HumanoidRootPart if character just loaded
        if not character:FindFirstChild('HumanoidRootPart') then
            character:WaitForChild('HumanoidRootPart')
        end

        -- Coordinate to exclude (do NOT teleport near here)
        local excludePosition = Vector3.new(-6.61, 4.00, 13.50)
        local excludeRadius = 10 -- studs; adjust as needed

        local function teleportToRandomLog()
            local logs = {}

            local itemsFolder = workspace:FindFirstChild('Items')
            if itemsFolder then
                for _, obj in pairs(itemsFolder:GetDescendants()) do
                    if
                        obj:IsA('Model')
                        and obj.Name == 'Log'
                        and obj.PrimaryPart
                    then
                        -- Check distance from excludePosition
                        local distance = (
                            obj.PrimaryPart.Position - excludePosition
                        ).Magnitude
                        if distance > excludeRadius then
                            table.insert(logs, obj)
                        end
                    end
                end
            end

            if #logs > 0 then
                local chosenLog = logs[math.random(1, #logs)]
                character:SetPrimaryPartCFrame(
                    chosenLog.PrimaryPart.CFrame + Vector3.new(0, 5, 0)
                )
            else
                warn(
                    "No valid 'Log' models found in workspace.Items outside the excluded area."
                )
            end
        end

        -- Call the function once (or call this function when you want to teleport)
        teleportToRandomLog()
    end,
})

local Section = TabFrame:NewSection({
    Title = 'Misc',
    Icon = 'rbxassetid://7743869054',
    Position = 'Bottom Left',
})

Section:NewButton({
    Title = 'Silent Aim',
    Callback = function()
        loadstring(
            game:HttpGet('https://[Log in to view URL]', true)
        )()
    end,
})

local toggleActive = false

Section:NewToggle({
    Title = 'Auto Armor',
    Default = false,
    Callback = function(state)
        toggleActive = state

        -- Auto Armor
        local RunService = game:GetService('RunService')
        local LocalPlayer = game.Players.LocalPlayer

        if state then
            RunService.Heartbeat:Connect(function()
                if
                    toggleActive
                    and LocalPlayer.Character
                    and LocalPlayer.Character:FindFirstChild('BodyEffects')
                then
                    if LocalPlayer.Character.BodyEffects.Armor.Value < 100 then
                        local Pos =
                            LocalPlayer.Character.HumanoidRootPart.CFrame
                        LocalPlayer.Character.HumanoidRootPart.CFrame =
                            workspace.Ignored.Shop['[High Armor] - $100000'].Head.CFrame
                        fireclickdetector(
                            workspace.Ignored.Shop['[High Armor] - $100000'].ClickDetector
                        )
                        RunService.RenderStepped:Wait()
                        LocalPlayer.Character.HumanoidRootPart.CFrame = Pos
                    end
                end
            end)
        end
    end,
})

local Section = TabFrame:NewSection({
    Title = 'Items',
    Icon = 'rbxassetid://7743869054',
    Position = 'Bottom Left',
})

-- Function to get all model names in workspace.Items that have PrimaryPart set, sorted alphabetically
local function getItems()
    local itemsFolder = workspace:FindFirstChild('Items')
    local results = {}

    if itemsFolder then
        for _, item in ipairs(itemsFolder:GetChildren()) do
            if item:IsA('Model') and item.PrimaryPart then
                table.insert(results, item.Name)
            end
        end

        -- Sort alphabetically
        table.sort(results, function(a, b)
            return a:lower() < b:lower()
        end)
    else
        warn("[TP]: Folder 'Items' not found in workspace.")
    end

    return results
end

-- Dropdown to teleport to selected item
Section:NewDropdown({
    Title = 'Select Item to Teleport',
    Data = getItems(),
    Default = nil,
    Callback = function(selected)
        local itemsFolder = workspace:FindFirstChild('Items')
        if not itemsFolder then
            warn('Items folder not found!')
            return
        end

        local model = itemsFolder:FindFirstChild(selected)
        if model and model:IsA('Model') and model.PrimaryPart then
            local hrp = game.Players.LocalPlayer.Character
                and game.Players.LocalPlayer.Character:FindFirstChild(
                    'HumanoidRootPart'
                )
            if hrp then
                hrp.CFrame = model.PrimaryPart.CFrame + Vector3.new(0, 5, 0)
            end
        end
    end,
})

-- Button to refresh the dropdown list dynamically
Section:NewButton({
    Title = 'Refresh Teleport List',
    Callback = function()
        local items = getItems()
        Section:UpdateDropdown('Select Item to Teleport', {
            Data = items,
        })
    end,
})

local Section = TabFrame:NewSection({
    Title = 'Esp',
    Icon = 'rbxassetid://7743869054',
    Position = 'Left',
})

local Players = game.Players
local LP = Players.LocalPlayer
local DB = false
local targetPlayerName = nil

local function nameMatches(player)
    if not targetPlayerName or targetPlayerName == '' then
        return false
    end
    return string.lower(player.Name):sub(1, #targetPlayerName)
            == string.lower(targetPlayerName)
        or string.lower(player.DisplayName):sub(1, #targetPlayerName)
            == string.lower(targetPlayerName)
end

local function updateESP(player)
    if player == LP or not player.Character then
        return
    end

    local highlight = player.Character:FindFirstChild('Totally NOT Esp')
        or player.Character:FindFirstChild('Icon')
    if not highlight then
        highlight = Instance.new('Highlight', player.Character)
        highlight.Name = 'Totally NOT Esp'
        highlight.Adornee = player.Character
        highlight.Enabled = true
        highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
        highlight.FillColor = Color3.fromRGB(255, 0, 255) -- Changed to purple
        highlight.FillTransparency = 0.5
        highlight.OutlineColor = Color3.fromRGB(128, 0, 128) -- Changed to purple
        highlight.OutlineTransparency = 0
    end

    highlight.Enabled = nameMatches(player) and DB
end

local function onPlayerAdded(player)
    player.CharacterAdded:Connect(function()
        updateESP(player)
    end)
    if player.Character then
        updateESP(player)
    end
end

for _, player in ipairs(Players:GetPlayers()) do
    onPlayerAdded(player)
end

Players.PlayerAdded:Connect(onPlayerAdded)

local function toggleESP(state)
    DB = state and (targetPlayerName ~= nil and targetPlayerName ~= '')
    for _, player in ipairs(Players:GetPlayers()) do
        if player == LP then
            continue
        end
        local highlight = player.Character
            and player.Character:FindFirstChild('Totally NOT Esp')
        if highlight then
            highlight.Enabled = DB and nameMatches(player)
        end
    end
end

-- New Textbox for Player Name Input
Section:NewTextbox({
    Title = 'Enter Player Username or Display Name',
    Default = '',
    FileType = '',
    Callback = function(username)
        targetPlayerName = username
        if DB then
            -- Update ESP highlighting without toggling
            for _, player in ipairs(Players:GetPlayers()) do
                updateESP(player)
            end
        else
            toggleESP(false) -- Ensure ESP is off if no valid name is provided
        end
    end,
})

-- New Toggle for ESP
Section:NewToggle({
    Title = 'Toggle ESP',
    Default = false,
    Callback = function(state)
        toggleESP(state)
        if state then
            while task.wait() do
                for _, player in ipairs(Players:GetPlayers()) do
                    updateESP(player)
                end
            end
        end
    end,
})

-- streak changer
local TabFrame = Windows:NewTab({
    Title = 'STREAK CHANGER',
    Description = 'change ur streak tags',
    Icon = 'rbxassetid://7733960981',
})
local Section = TabFrame:NewSection({
    Title = 'Streaks',
    Icon = 'rbxassetid://7743869054',
    Position = 'Left',
})

Section:NewButton({
    Title = 'Default',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Default:FireServer()
    end,
})
Section:NewButton({
    Title = 'Cotton Candy',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.CottonC:FireServer()
    end,
})
Section:NewButton({
    Title = 'Sour',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Sour:FireServer()
    end,
})
Section:NewButton({
    Title = 'Group',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.GroupM:FireServer()
    end,
})
Section:NewButton({
    Title = 'Pitch',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Pitch:FireServer()
    end,
})
Section:NewButton({
    Title = 'Y2K',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Y2K:FireServer()
    end,
})
Section:NewButton({
    Title = 'Vamp',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Vamp:FireServer()
    end,
})
Section:NewButton({
    Title = 'Graffiti',
    Callback = function()
        game:GetService('ReplicatedStorage').Streakers.Graffiti:FireServer()
    end,
})

-- outfits
local TabFrame = Windows:NewTab({
    Title = 'OUTFITS',
    Description = 'change ur streak tags',
    Icon = 'rbxassetid://7733960981',
})
local Section = TabFrame:NewSection({
    Title = 'Male',
    Icon = 'rbxassetid://7743869054',
    Position = 'Left',
})

Section:NewButton({
    Title = 'Original Avatar',
    Callback = function()
        loadstring(
            game:HttpGet('https://[Log in to view URL]', true)
        )()
    end,
})
Section:NewButton({
    Title = 'Tryhard V1',
    Callback = function()
        loadstring(
            game:HttpGet('https://[Log in to view URL]', true)
        )()
    end,
})

-- leave this alone
InfoSection:NewTitle('UI by CATSUS')
InfoSection:NewButton({
    Title = 'Discord',
    Callback = function()
        print('hi')
    end,
})
NothingLibrary.NewAuth({
    Title = 'Neuron X',
    GetKey = function()
        return 'https://[Log in to view URL]'
    end,
    Auth = function(MAIN_KEY)
        if MAIN_KEY.Name == '1234' then
            return true
        end
    end,
    Freeze = true,
}).Close()

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: