local Rayfield = loadstring(game:HttpGet('https://[Log in to view URL]'))()

local Window = Rayfield:CreateWindow({
   Name = "Rayfield Example Window",
   Icon = 0, -- Icon in Topbar. Can use Lucide Icons (string) or Roblox Image (number). 0 to use no icon (default).
   LoadingTitle = "Rayfield Interface Suite",
   LoadingSubtitle = "by Sirius",
   Theme = "Default", -- Check https://[Log in to view URL]

   DisableRayfieldPrompts = false,
   DisableBuildWarnings = false, -- Prevents Rayfield from warning when the script has a version mismatch with the interface

   ConfigurationSaving = {
      Enabled = true,
      FolderName = nil, -- Create a custom folder for your hub/game
      FileName = "Big Hub"
   },

   Discord = {
      Enabled = false, -- Prompt the user to join your Discord server if their executor supports it
      Invite = "noinvitelink", -- The Discord invite code, do not include discord.gg/. E.g. discord.gg/ ABCD would be ABCD
      RememberJoins = true -- Set this to false to make them join the discord every time they load it up
   },

   KeySystem = false, -- Set this to true to use our key system
   KeySettings = {
      Title = "Untitled",
      Subtitle = "Key System",
      Note = "No method of obtaining the key is provided", -- Use this to tell the user how to get a key
      FileName = "Key", -- It is recommended to use something unique as other scripts using Rayfield may overwrite your key file
      SaveKey = true, -- The user's key will be saved, but if you change the key, they will be unable to use your script
      GrabKeyFromSite = false, -- If this is true, set Key below to the RAW site you would like Rayfield to get the key from
      Key = {"Hello"} -- List of keys that will be accepted by the system, can be RAW file links (pastebin, github etc) or simple strings ("hello","key22")
   }
})

local MainTab = Window:CreateTab("Main", "box")
local MainSection1 = MainTab:CreateSection("Dupe")

MainTab:CreateParagraph({
    Title = "Duping Guide",
    Content = "Buy Kool Aid Ingredients then cook in a pot then wait for them to be done then fill pitchers cup then fill. DONT HOLD OUT CUP just press Money Vulnerability then boom you have 990k dirty money. Enjoy!"
})

local player = game.Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui

-- Create full-screen blackout
function createBlackout()
    if screenGui then return end

    screenGui = Instance.new("ScreenGui")
    screenGui.Name = "BlackoutGui"
    screenGui.IgnoreGuiInset = true
    screenGui.ResetOnSpawn = false
    screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
    screenGui.Parent = playerGui

    local blackFrame = Instance.new("Frame")
    blackFrame.Size = UDim2.new(1, 0, 1, 0)
    blackFrame.Position = UDim2.new(0, 0, 0, 0)
    blackFrame.BackgroundColor3 = Color3.new(0, 0, 0)
    blackFrame.BackgroundTransparency = 0
    blackFrame.BorderSizePixel = 0
    blackFrame.ZIndex = 100000
    blackFrame.Parent = screenGui

    local label = Instance.new("TextLabel")
    label.Name = "BlackoutLabel"
    label.Size = UDim2.new(1, 0, 1, 0)
    label.Position = UDim2.new(0, 0, 0, 0)
    label.BackgroundTransparency = 1
    label.Text = "#1 Undetected DKHub"
    label.TextColor3 = Color3.new(1, 0, 0)
    label.TextStrokeTransparency = 0
    label.Font = Enum.Font.GothamBold
    label.TextScaled = true
    label.ZIndex = 100001
    label.Parent = blackFrame
end

-- Remove blackout
function destroyBlackout()
    if screenGui then
        screenGui:Destroy()
        screenGui = nil
    end
end

-- Teleport with blackout
function teleport(x, y, z)
    createBlackout()

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end

    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    local character = player.Character
    local rootPart = character and character:FindFirstChild("HumanoidRootPart")
    local humanoid = character and character:FindFirstChild("Humanoid")

    if seat and rootPart and humanoid then
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(1e-27)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    task.wait(0.5)
    destroyBlackout()
end

-- Check if Ice-Fruit Cupz is in backpack
function checkSell()
    local backpack = player:WaitForChild("Backpack")
    return backpack:FindFirstChild("Ice-Fruit Cupz") ~= nil
end

-- Button action
MainTab:CreateButton({
    Name = "Dupe Money / Infinite Money",
    Callback = function()
        local character = player.Character or player.CharacterAdded:Wait()
        local hrp = character:FindFirstChild("HumanoidRootPart")

        if not (character and hrp) then return end

        if not checkSell() then
            Rayfield:Notify({
                Title = "Error",
                Content = "You do not have an Ice-Fruit Cupz!",
                Duration = 5,
                Image = 4483345998,
            })
            return
        end

        local originalCFrame = hrp.CFrame
        local sellPart = workspace:FindFirstChild("IceFruit Sell")
        local sellPrompt = sellPart and sellPart:FindFirstChild("ProximityPrompt")
        if not (sellPart and sellPrompt) then return end

        player.Character.Humanoid:EquipTool(player.Backpack:FindFirstChild("Ice-Fruit Cupz"))

        teleport(sellPart.Position.X, sellPart.Position.Y, sellPart.Position.Z)
        task.wait(0.25)

        for _ = 1, 2000 do
            pcall(function()
                fireproximityprompt(sellPrompt, 0)
            end)
        end

        task.wait(2)
        teleport(originalCFrame.Position.X, originalCFrame.Position.Y, originalCFrame.Position.Z)

        Rayfield:Notify({
            Title = "Success!",
            Content = "Your dirty money has been successfully maxed!",
            Duration = 5,
            Image = 4483345998,
        })
    end
})


v12 = 0
v13 = 35

function createScreenGui()
    local player = game.Players.LocalPlayer
    if not player then return end

    local playerGui = player:WaitForChild("PlayerGui")
    if playerGui:FindFirstChild("BlackoutGui") then return end

    local screenGui = Instance.new("ScreenGui")
    screenGui.Name = "BlackoutGui"
    screenGui.ResetOnSpawn = false
    screenGui.IgnoreGuiInset = true
    screenGui.DisplayOrder = 9999
    screenGui.Parent = playerGui

    local frame = Instance.new("Frame")
    frame.Size = UDim2.new(1, 0, 1, 0)
    frame.Position = UDim2.new(0, 0, 0, 0)
    frame.BackgroundColor3 = Color3.new(0, 0, 0)  -- full black
    frame.BackgroundTransparency = 0               -- fully opaque
    frame.BorderSizePixel = 0
    frame.ZIndex = 999999
    frame.Parent = screenGui

    local textLabel = Instance.new("TextLabel")
    textLabel.Size = UDim2.new(1, 0, 0.1, 0)       -- 10% height
    textLabel.Position = UDim2.new(0, 0, 0.45, 0)  -- vertical center approx
    textLabel.BackgroundTransparency = 1
    textLabel.Text = "#1 Undetected DKHub"
    textLabel.TextColor3 = Color3.new(1, 0, 0)      -- red text
    textLabel.Font = Enum.Font.GothamBold
    textLabel.TextScaled = true
    textLabel.TextStrokeTransparency = 0
    textLabel.TextStrokeColor3 = Color3.new(0, 0, 0)
    textLabel.ZIndex = 1000000
    textLabel.Parent = frame
end

function destroyScreenGui()
    local player = game.Players.LocalPlayer
    if not player then return end

    local playerGui = player:FindFirstChild("PlayerGui")
    if playerGui then
        local blackoutGui = playerGui:FindFirstChild("BlackoutGui")
        if blackoutGui then
            blackoutGui:Destroy()
        end
    end
end

function teleport(x, y, z)
    createScreenGui()

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)
    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end
    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    if seat and game.Players.LocalPlayer.Character and game.Players.LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and game.Players.LocalPlayer.Character:FindFirstChild("Humanoid") then
        local rootPart = game.Players.LocalPlayer.Character.HumanoidRootPart
        local humanoid = game.Players.LocalPlayer.Character.Humanoid
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(2.6)
        seat:Sit(humanoid)
        task.wait(2.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(0.000000000000000000000000001)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    wait(0.5)
    destroyScreenGui()
end

MainTab:CreateButton({
    Name = "Safe Dupe",
    Callback = function()
        local currentTime = os.time()
        if ((currentTime - v12) < v13) then
            local timeLeft = math.ceil(v13 - (currentTime - v12))
            Rayfield:Notify({
                Title = "Dupe Gun",
                Content = "Please wait " .. timeLeft .. " seconds!",
                Duration = 3,
                Image = 4483345998,
            })
            return
        end

        v12 = currentTime
        Rayfield:Notify({
            Title = "Dupe Gun",
            Content = "Duping...",
            Duration = 5,
            Image = 4483345998,
        })

        local replicatedStorage = game:GetService("ReplicatedStorage")
        local players = game:GetService("Players")
        local workspace = game:GetService("Workspace")
        local inventory = replicatedStorage:WaitForChild("Inventory")
        local backpackRemote = replicatedStorage:WaitForChild("BackpackRemote")

        local function getCharacter()
            return players.LocalPlayer.Character
        end

        local function teleportTo(position)
            teleport(position.X, position.Y, position.Z)
        end

        if getCharacter() and getCharacter():FindFirstChildOfClass("Tool") then
            local step = 0
            local toolName
            local safe
            local originalCFrame

            while true do
                if step == 4 then
                    task.wait(0.5)
                    teleportTo(originalCFrame.Position)
                    Rayfield:Notify({
                        Title = "Dupe Gun",
                        Content = "Gun Duped",
                        Duration = 5,
                        Image = 4483345998,
                    })
                    break
                end
                if step == 2 then
                    task.spawn(function()
                        backpackRemote:InvokeServer("Store", toolName)
                    end)
                    task.spawn(function()
                        inventory:FireServer("Change", toolName, "Backpack", safe)
                    end)
                    task.wait(1.5)
                    step = 3
                end
                if step == 3 then
                    teleportTo(originalCFrame.Position)
                    task.wait(1)
                    backpackRemote:InvokeServer("Grab", toolName)
                    step = 4
                end
                if step == 0 then
                    toolName = getCharacter():FindFirstChildOfClass("Tool").Name
                    getCharacter():FindFirstChildOfClass("Humanoid"):UnequipTools()
                    safe = workspace["1# Map"]["2 Crosswalks"].Safes:FindFirstChild("Safe")
                    step = 1
                end
                if step == 1 then
                    originalCFrame = getCharacter():FindFirstChild("HumanoidRootPart").CFrame
                    teleportTo(safe:FindFirstChildWhichIsA("BasePart").Position)
                    task.wait(0.5)
                    step = 2
                end
            end
        else
            Rayfield:Notify({
                Title = "Dupe Gun",
                Content = "No Tool Found!",
                Duration = 5,
                Image = 4483345998,
            })
        end
    end
})


local MainSection1 = MainTab:CreateSection("ATM / Bank")

local lastEnteredAmount = 0

MainTab:CreateInput({
    Name = "Amount",
    CurrentValue = "",
    PlaceholderText = "(<ENTER_$_AMOUNT>)",
    RemoveTextAfterFocusLost = false,
    Flag = "BankAmount",
    Callback = function(Text)
        local amount = tonumber(Text)
        if amount and amount > 0 then
            lastEnteredAmount = amount
            Rayfield:Notify({Title = "Amount Set", Content = "Ready to use $" .. amount, Duration = 2})
        else
            lastEnteredAmount = 0
            Rayfield:Notify({Title = "Invalid", Content = "Please enter a valid number.", Duration = 2})
        end
    end,
})

MainTab:CreateButton({
    Name = "Withdraw Amount",
    Callback = function()
        if lastEnteredAmount > 0 and lastEnteredAmount <= 90000 then
            game:GetService("ReplicatedStorage").BankAction:FireServer("with", lastEnteredAmount)
            Rayfield:Notify({Title = "Withdrawed Money", Content = "You Have Successfully Withdrew $" .. lastEnteredAmount, Duration = 3})
        else
            Rayfield:Notify({Title = "Withdraw", Content = "Invalid amount! Max is 90K.", Duration = 3})
        end
    end,
})

MainTab:CreateButton({
    Name = "Deposit Amount",
    Callback = function()
        if lastEnteredAmount > 0 and lastEnteredAmount <= 30000 then
            game:GetService("ReplicatedStorage").BankAction:FireServer("depo", lastEnteredAmount)
            Rayfield:Notify({Title = "Deposited Money", Content = " You Successfully Deposited $" .. lastEnteredAmount, Duration = 3})
        else
            Rayfield:Notify({Title = "Deposit", Content = "Invalid amount! Max is 30K.", Duration = 3})
        end
    end,
})

MainTab:CreateButton({
    Name = "Drop Amount",
    Callback = function()
        if lastEnteredAmount > 0 then
            local args = {
                [1] = "Drop",
                [2] = tostring(lastEnteredAmount)
            }
            game:GetService("ReplicatedStorage"):WaitForChild("BankProcessRemote"):InvokeServer(unpack(args))
            Rayfield:Notify({Title = "Dropped Money", Content = "You have Successfully Dropped" .. lastEnteredAmount, Duration = 4})
        else
            Rayfield:Notify({Title = "Drop", Content = "Invalid amount to drop.", Duration = 3})
        end
    end,
})

local MainSection = MainTab:CreateSection("Quick Shop")

MainTab:CreateButton({
    Name = "Purchase Water ($10)",
    Callback = function()
        local ohString1 = "Water"
        game:GetService("ReplicatedStorage").ShopRemote:InvokeServer(ohString1)
    end,
})

MainTab:CreateButton({
    Name = "Purchase Shiesty ($25)",
    Callback = function()
        local ohString1 = "Shiesty"
        game:GetService("ReplicatedStorage").ShopRemote:InvokeServer(ohString1)
    end,
})

MainTab:CreateButton({
    Name = "Purchase Gloves ($10)",
    Callback = function()
        local ohString1 = "WhiteGloves"
        game:GetService("ReplicatedStorage").ShopRemote:InvokeServer(ohString1)
    end,
})

local MainSection = MainTab:CreateSection("Exotic Dealer")

MainTab:CreateButton({
    Name = "Purchase Fake Card ($700)",
    Callback = function()
        local args = {
            [1] = "FakeCard"
        }

        game:GetService("ReplicatedStorage"):WaitForChild("ExoticShopRemote"):InvokeServer(unpack(args))
    end,
})

local MainSection = MainTab:CreateSection("miscellaneous")

local function createScreenGui()
    -- Prevent duplicate GUI
    if game.CoreGui:FindFirstChild("BlackoutGui") then return end

    local gui = Instance.new("ScreenGui")
    gui.Name = "BlackoutGui"
    gui.ResetOnSpawn = false
    gui.IgnoreGuiInset = true
    gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
    gui.Parent = game.CoreGui

    -- Black background
    local blackFrame = Instance.new("Frame")
    blackFrame.Size = UDim2.new(1, 0, 1, 0)
    blackFrame.Position = UDim2.new(0, 0, 0, 0)
    blackFrame.BackgroundColor3 = Color3.new(0, 0, 0)
    blackFrame.BackgroundTransparency = 0
    blackFrame.BorderSizePixel = 0
    blackFrame.ZIndex = 1
    blackFrame.Parent = gui

    -- Red text label
    local label = Instance.new("TextLabel")
    label.Size = UDim2.new(1, 0, 1, 0)
    label.Position = UDim2.new(0, 0, 0, 0)
    label.BackgroundTransparency = 1
    label.Text = "#1 Undetected DKHub"
    label.TextColor3 = Color3.new(1, 0, 0)
    label.TextStrokeTransparency = 0
    label.Font = Enum.Font.GothamBold
    label.TextScaled = true
    label.ZIndex = 2
    label.Parent = blackFrame
end

local function destroyScreenGui()
    local gui = game.CoreGui:FindFirstChild("BlackoutGui")
    if gui then
        gui:Destroy()
    end
end

local function teleport(x, y, z)
    createScreenGui()

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end

    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    local player = game.Players.LocalPlayer
    local character = player.Character
    local rootPart = character and character:FindFirstChild("HumanoidRootPart")
    local humanoid = character and character:FindFirstChild("Humanoid")

    if seat and rootPart and humanoid then
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(1e-27)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    task.wait(0.5)
    destroyScreenGui()
end

MainTab:CreateButton({
    Name = "Clean Money",
    Callback = function()
        teleport(-990, 254, -686)
    end,
})

function createScreenGui()
    -- Prevent duplicates
    if game.CoreGui:FindFirstChild("BlackoutGui") then return end

    local gui = Instance.new("ScreenGui")
    gui.Name = "BlackoutGui"
    gui.ResetOnSpawn = false
    gui.IgnoreGuiInset = true
    gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
    gui.Parent = game.CoreGui

    local blackFrame = Instance.new("Frame")
    blackFrame.Size = UDim2.new(1, 0, 1, 0)
    blackFrame.Position = UDim2.new(0, 0, 0, 0)
    blackFrame.BackgroundColor3 = Color3.new(0, 0, 0)
    blackFrame.BackgroundTransparency = 0 -- Fully opaque
    blackFrame.BorderSizePixel = 0
    blackFrame.ZIndex = 1
    blackFrame.Parent = gui

    local label = Instance.new("TextLabel")
    label.Text = "#1 Undetected DKHub"
    label.Size = UDim2.new(1, 0, 0.1, 0)
    label.Position = UDim2.new(0, 0, 0.45, 0)
    label.TextColor3 = Color3.new(1, 0, 0) -- Red text
    label.BackgroundTransparency = 1
    label.Font = Enum.Font.GothamBlack
    label.TextScaled = true
    label.ZIndex = 2
    label.Parent = gui
end

function destroyScreenGui()
    local gui = game.CoreGui:FindFirstChild("BlackoutGui")
    if gui then
        gui:Destroy()
    end
end

function teleport(x, y, z)
    createScreenGui()

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end

    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    local player = game.Players.LocalPlayer
    local character = player.Character
    local rootPart = character and character:FindFirstChild("HumanoidRootPart")
    local humanoid = character and character:FindFirstChild("Humanoid")

    if seat and rootPart and humanoid then
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(1e-27)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    task.wait(0.5)
    destroyScreenGui()
end

MainTab:CreateButton({
    Name = "Teleport to Closest Safe",
    Callback = function()
        teleport(-159, 295, -1010)
    end,
})

function createBlackout()
    local player = game.Players.LocalPlayer
    if not player then return end

    local playerGui = player:WaitForChild("PlayerGui")
    if playerGui:FindFirstChild("BlackoutGui") then return end

    local screenGui = Instance.new("ScreenGui")
    screenGui.Name = "BlackoutGui"
    screenGui.IgnoreGuiInset = true
    screenGui.ResetOnSpawn = false
    screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
    screenGui.Parent = playerGui

    local frame = Instance.new("Frame")
    frame.Size = UDim2.new(1, 0, 1, 0)
    frame.Position = UDim2.new(0, 0, 0, 0)
    frame.BackgroundColor3 = Color3.new(0, 0, 0)
    frame.BackgroundTransparency = 0
    frame.BorderSizePixel = 0
    frame.ZIndex = 1
    frame.Parent = screenGui

    local textLabel = Instance.new("TextLabel")
    textLabel.Size = UDim2.new(0.6, 0, 0.1, 0)
    textLabel.Position = UDim2.new(0.2, 0, 0.45, 0)
    textLabel.BackgroundTransparency = 1
    textLabel.Text = "#1 Undetected DKHub"
    textLabel.TextColor3 = Color3.fromRGB(255, 0, 0)
    textLabel.Font = Enum.Font.GothamBold
    textLabel.TextScaled = true
    textLabel.ZIndex = 2
    textLabel.Parent = frame
end

function destroyBlackout()
    local gui = game.Players.LocalPlayer:FindFirstChild("PlayerGui")
    if gui and gui:FindFirstChild("BlackoutGui") then
        gui.BlackoutGui:Destroy()
    end
end

function teleportBypass(x, y, z)
    createBlackout()
    local player = game.Players.LocalPlayer
    local char = player.Character or player.CharacterAdded:Wait()
    local root = char:FindFirstChild("HumanoidRootPart")
    local humanoid = char:FindFirstChild("Humanoid")
    if not root or not humanoid then return end

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end
    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    if seat then
        local originalCFrame = seat.CFrame
        seat.CFrame = root.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(1e-27)
        seat.CFrame = CFrame.new(originalCFrame.X, originalCFrame.Y - 100, originalCFrame.Z)
    end
    wait(0.5)
    destroyBlackout()
end

function placeToolInSafe()
    local player = game.Players.LocalPlayer
    local tool = player.Character and player.Character:FindFirstChildOfClass("Tool")
    if not tool then
        Rayfield:Notify({
            Title = "Error",
            Content = "No tool equipped!",
            Duration = 5,
            Image = 4483345998,
        })
        return
    end

    local backpackRemote = game.ReplicatedStorage:FindFirstChild("BackpackRemote")
    local inventory = game.ReplicatedStorage:FindFirstChild("Inventory")
    local safe = workspace["1# Map"]["2 Crosswalks"].Safes:FindFirstChild("Safe")
    if not backpackRemote or not inventory or not safe then return end

    local originalCFrame = player.Character:FindFirstChild("HumanoidRootPart").CFrame
    local safePart = safe:FindFirstChildWhichIsA("BasePart")
    if not safePart then return end

    player.Character:FindFirstChildOfClass("Humanoid"):UnequipTools()

    teleportBypass(safePart.Position.X, safePart.Position.Y, safePart.Position.Z)
    task.wait(1)

    task.spawn(function()
        backpackRemote:InvokeServer("Store", tool.Name)
    end)
    task.spawn(function()
        inventory:FireServer("Change", tool.Name, "Backpack", safe)
    end)

    wait(2)

    teleportBypass(originalCFrame.X, originalCFrame.Y, originalCFrame.Z)

    Rayfield:Notify({
        Title = "Success",
        Content = "Tool successfully stored in safe!",
        Duration = 5,
        Image = 4483345998,
    })
end

MainTab:CreateButton({
    Name = "Store Item in Safe",
    Callback = function()
        placeToolInSafe()
    end,
})

MainTab:CreateButton({
    Name = "Open / Close Market",
    Callback = function()
        local player = game:GetService("Players").LocalPlayer
        local playerGui = player:WaitForChild("PlayerGui")

        local marketGui = playerGui:FindFirstChild("Bronx Market 2")
        if marketGui then
            if marketGui:IsA("ScreenGui") then
                marketGui.Enabled = true
            elseif marketGui:IsA("GuiObject") then
                marketGui.Visible = true
            end
        else
            Rayfield:Notify({
                Title = "Error",
                Content = "'Bronx Market 2' GUI not found!",
                Duration = 4,
                Image = 4483345998,
            })
        end
    end,
})

local MainSection = MainTab:CreateSection("Extra")

local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local PlayerList = {}
local SelectedPlayer

-- Setup initial player list
for _, player in ipairs(Players:GetPlayers()) do
    if player ~= LocalPlayer then
        table.insert(PlayerList, player.Name)
    end
end

local TeleportDropdown = MainTab:CreateDropdown({
    Name = "Select Player",
    Options = PlayerList,
    CurrentOption = {},
    MultipleOptions = false,
    Flag = "PlayerDropdown",
    Callback = function(Options)
        SelectedPlayer = Options[1]
    end,
})

local function UpdateDropdown()
    local NewOptions = {}
    for _, player in ipairs(Players:GetPlayers()) do
        if player ~= LocalPlayer then
            table.insert(NewOptions, player.Name)
        end
    end
    PlayerList = NewOptions
    TeleportDropdown:Set(PlayerList)
end

local RefreshButton = MainTab:CreateButton({
    Name = "Refresh Players",
    Callback = UpdateDropdown,
})

function createScreenGui()
    local gui = Instance.new("ScreenGui")
    gui.Name = "BlackoutGui"
    gui.ResetOnSpawn = false
    gui.IgnoreGuiInset = true
    gui.DisplayOrder = 9999
    gui.Parent = LocalPlayer:WaitForChild("PlayerGui")

    local blackout = Instance.new("Frame")
    blackout.Size = UDim2.new(1, 0, 1, 0)
    blackout.Position = UDim2.new(0, 0, 0, 0)
    blackout.BackgroundColor3 = Color3.new(0, 0, 0)
    blackout.BackgroundTransparency = 0
    blackout.ZIndex = 1
    blackout.Parent = gui

    local label = Instance.new("TextLabel")
    label.Size = UDim2.new(0, 300, 0, 50)
    label.Position = UDim2.new(0.5, -150, 0.5, -25)
    label.BackgroundTransparency = 1
    label.Text = "discord.gg/dkhubs"
    label.TextColor3 = Color3.fromRGB(255, 0, 0)
    label.TextSize = 32
    label.Font = Enum.Font.SourceSansBold
    label.ZIndex = 2
    label.Parent = gui
end

function destroyScreenGui()
    local gui = LocalPlayer:FindFirstChild("PlayerGui"):FindFirstChild("BlackoutGui")
    if gui then
        gui:Destroy()
    end
end

function teleport(x, y, z)
    createScreenGui()

    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end

    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    if seat and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and LocalPlayer.Character:FindFirstChild("Humanoid") then
        local rootPart = LocalPlayer.Character.HumanoidRootPart
        local humanoid = LocalPlayer.Character.Humanoid
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(0.000000000000000000000000001)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    wait(0.5)
    destroyScreenGui()
end


MainTab:CreateSection("Actions")

local TeleportButton = MainTab:CreateButton({
    Name = "Teleport To Player",
    Callback = function()
        local target = Players:FindFirstChild(SelectedPlayer)
        if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
            local pos = target.Character.HumanoidRootPart.Position
            teleport(pos.X, pos.Y, pos.Z)
        end
    end,
})

MainTab:CreateSection("Teleports")

local teleportLocations = {
    {Name = "Dripstore", Position = Vector3.new(67459, 10489, 551)},
    {Name = "Bank", Position = Vector3.new(-204, 284, -1223)},
    {Name = "Ice Box", Position = Vector3.new(-193, 284, -1169)},
    {Name = "Roof", Position = Vector3.new(-384, 340, -557)},
    {Name = "Jamaican Food", Position = Vector3.new(-670, 254, -810)},
    {Name = "Deli and Grill", Position = Vector3.new(-746, 254, -906)},
    {Name = "Chicken and Wings", Position = Vector3.new(964, 254, -813)},
    {Name = "Gunstore 1", Position = Vector3.new(-1003, 254, -817)},
    {Name = "Gunstore 2", Position = Vector3.new(-202, 284, -798)},
    {Name = "Gunstore 3", Position = Vector3.new(72425, 128856, -1082)},
    {Name = "Gunstore 4", Position = Vector3.new(60822, 87609, -352)},
    {Name = "Pawnshop", Position = Vector3.new(-1051, 254, -815)},
    {Name = "Laundermat", Position = Vector3.new(-990, 254, -686)},
    {Name = "Backpack", Position = Vector3.new(-670, 254, -681)},
    {Name = "Tatoo", Position = Vector3.new(-637, 254, -591)},
    {Name = "Penthouse Cook Pot", Position = Vector3.new(-614, 356, -683)},
    {Name = "New Penthouse", Position = Vector3.new(-597, 356, -714)},
    {Name = "Old Penthouse", Position = Vector3.new(-124, 417, -575)},
    {Name = "Dollar Central", Position = Vector3.new(-389, 254, -1082)},
    {Name = "Dealership", Position = Vector3.new(-389, 253, -1232)},
    {Name = "mcdonalds", Position = Vector3.new(-999, 254, -1134)},
}

-- Blackout GUI
function createScreenGui()
    local gui = Instance.new("ScreenGui", game.Players.LocalPlayer:WaitForChild("PlayerGui"))
    gui.Name = "Blackout"
    gui.IgnoreGuiInset = true
    gui.ResetOnSpawn = false

    local frame = Instance.new("Frame", gui)
    frame.Size = UDim2.new(1, 0, 1, 0)
    frame.Position = UDim2.new(0, 0, 0, 0)
    frame.BackgroundColor3 = Color3.new(0, 0, 0)
    frame.BackgroundTransparency = 0
    frame.ZIndex = 1

    local label = Instance.new("TextLabel", frame)
    label.Size = UDim2.new(0.3, 0, 0.05, 0)
    label.Position = UDim2.new(0.35, 0, 0.475, 0)
    label.BackgroundTransparency = 1
    label.Text = "discord.gg/dkhubs"
    label.TextColor3 = Color3.fromRGB(255, 0, 0)
    label.Font = Enum.Font.GothamBold
    label.TextScaled = true
    label.ZIndex = 2

    return gui
end

function destroyScreenGui()
    local gui = game.Players.LocalPlayer:FindFirstChild("PlayerGui"):FindFirstChild("Blackout")
    if gui then gui:Destroy() end
end

-- Teleport function with seat bypass
function teleport(x, y, z)
    createScreenGui()
    local seat
    local targetPosition = Vector3.new(-1487.578369140625, 251.75901794433594, -408.8100891113281)

    for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
        if obj:IsA("Seat") and (obj.Position - targetPosition).Magnitude < 1 then
            seat = obj
            break
        end
    end

    if not seat then
        for _, obj in pairs(workspace["1# Map"].RandomStuff:GetDescendants()) do
            if obj:IsA("Seat") then
                seat = obj
                break
            end
        end
    end

    local player = game.Players.LocalPlayer
    if seat and player.Character and player.Character:FindFirstChild("HumanoidRootPart") and player.Character:FindFirstChild("Humanoid") then
        local rootPart = player.Character.HumanoidRootPart
        local humanoid = player.Character.Humanoid
        local originalPosition = seat.CFrame

        seat.CFrame = rootPart.CFrame
        task.wait(0.6)
        seat:Sit(humanoid)
        task.wait(0.6)
        seat.CFrame = CFrame.new(x, y - 1, z)
        task.wait(0.6)
        humanoid.Sit = false
        humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        task.wait(0.000000000000000000000000001)
        seat.CFrame = CFrame.new(originalPosition.X, originalPosition.Y - 100, originalPosition.Z)
    end

    wait(0.5)
    destroyScreenGui()
end

-- Dropdown and button logic
local selectedTeleport = teleportLocations[1]

local locationNames = {}
for _, location in ipairs(teleportLocations) do
    table.insert(locationNames, location.Name)
end

MainTab:CreateDropdown({
    Name = "Select Location",
    Options = locationNames,
    CurrentOption = {locationNames[1]},
    MultipleOptions = false,
    Flag = "TeleportDropdown",
    Callback = function(Options)
        for _, location in ipairs(teleportLocations) do
            if location.Name == Options[1] then
                selectedTeleport = location
                break
            end
        end
    end
})

MainTab:CreateButton({
    Name = "Teleport to Selected Location",
    Callback = function()
        if selectedTeleport then
            teleport(selectedTeleport.Position.X, selectedTeleport.Position.Y, selectedTeleport.Position.Z)
        end
    end
})

Embed on website

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