local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local ScreenGui = Instance.new("ScreenGui")
local Frame = Instance.new("Frame")
local NoclipButton = Instance.new("TextButton")
local SpeedButton = Instance.new("TextButton")
local FlyButton = Instance.new("TextButton")
local JumpButton = Instance.new("TextButton")
local InfiniteYieldButton = Instance.new("TextButton")
local TeleportButton = Instance.new("TextButton")

-- Create the ScreenGui
ScreenGui.Name = "ScriptGUI"
ScreenGui.Parent = game.CoreGui

-- Create the Frame
Frame.Name = "ButtonFrame"
Frame.Parent = ScreenGui
Frame.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
Frame.Position = UDim2.new(1, -110, 0, 10)
Frame.Size = UDim2.new(0, 100, 0, 250)
Frame.Visible = false

-- Function to create a button
local function createButton(name, parent, position, text, color)
    local button = Instance.new("TextButton")
    button.Name = name
    button.Parent = parent
    button.BackgroundColor3 = color
    button.Position = position
    button.Size = UDim2.new(1, 0, 0, 30)
    button.Font = Enum.Font.SourceSans
    button.Text = text
    button.TextColor3 = Color3.fromRGB(255, 255, 255)
    button.TextSize = 14
    return button
end

-- Create the buttons
NoclipButton = createButton("NoclipButton", Frame, UDim2.new(0, 0, 0, 10), "Noclip (e)", Color3.fromRGB(255, 0, 0))
SpeedButton = createButton("SpeedButton", Frame, UDim2.new(0, 0, 0, 50), "Inf Speed", Color3.fromRGB(0, 0, 255))
JumpButton = createButton("JumpButton", Frame, UDim2.new(0, 0, 0, 90), "Inf Jump", Color3.fromRGB(148, 3, 252))
FlyButton = createButton("FlyButton", Frame, UDim2.new(0, 0, 0, 130), "Fly v1", Color3.fromRGB(0, 255, 0))
InfiniteYieldButton = createButton("InfiniteYieldButton", Frame, UDim2.new(0, 0, 0, 170), "Infinite Yields", Color3.fromRGB(255, 165, 0))
TeleportButton = createButton("TeleportButton", Frame, UDim2.new(0, 0, 0, 210), "Teleport (Ctrl)", Color3.fromRGB(255, 215, 0))

-- Noclip button click event
NoclipButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet('http://samoletko.com/get/noclip.txt'))()
end)

-- Speed button click event
SpeedButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet('http://samoletko.com/get/inf_speed.txt'))()
end)

-- Jump button click event
JumpButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet("https://cdn.wearedevs.net/scripts/Infinite%20Jump.txt"))()
end)

-- Fly button click event
FlyButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet('http://samoletko.com/get/fly_v1.txt'))()
end)

-- Infinite Yield button click event
InfiniteYieldButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet('https://raw.githubusercontent.com/EdgeIY/infiniteyield/master/source'))()
end)

-- Teleport button click event
TeleportButton.MouseButton1Click:Connect(function()
    loadstring(game:HttpGet('http://samoletko.com/get/click_tp.txt'))()
end)

-- Toggle frame visibility with Alt key
UserInputService.InputBegan:Connect(function(input)
    if input.KeyCode == Enum.KeyCode.LeftAlt then
        Frame.Visible = not Frame.Visible
    end
end)
