Cheese Teleporter
Key Required

Cheese Teleporter

BEAR (Alpha)guestrowiguestrowi 1K views 522 executesUpdated Jul 7, 2026
Unrated
00
Lua Script•460 lines (14148 chars)
local player = game.Players.LocalPlayer
local gui = Instance.new("ScreenGui")
gui.Name = "CheeseTeleportGUI"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.Parent = player.PlayerGui

-- Делаем GUI крупным и заметным
local frame = Instance.new("Frame")
frame.Name = "MainFrame"
frame.Size = UDim2.new(0, 280, 0, 140) -- Увеличил высоту для новой кнопки
frame.Position = UDim2.new(0.5, -140, 0.5, -70)
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
frame.BackgroundTransparency = 0.1
frame.BorderSizePixel = 3
frame.BorderColor3 = Color3.fromRGB(255, 200, 50)
frame.Parent = gui

-- Делаем фон с эффектом свечения
local glow = Instance.new("UIGradient")
glow.Color = ColorSequence.new({
    ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 200, 50)),
    ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 150, 0)),
    ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 200, 50))
})
glow.Rotation = 45
glow.Parent = frame

-- Заголовок
local title = Instance.new("TextLabel")
title.Name = "Title"
title.Size = UDim2.new(1, 0, 0.2, 0)
title.Position = UDim2.new(0, 0, 0, 0)
title.BackgroundTransparency = 1
title.Text = "🍕 CHEESE TELEPORT 🍕"
title.TextColor3 = Color3.fromRGB(255, 200, 50)
title.TextScaled = true
title.Font = Enum.Font.GothamBold
title.Parent = frame

-- Статус
local status = Instance.new("TextLabel")
status.Name = "Status"
status.Size = UDim2.new(1, 0, 0.15, 0)
status.Position = UDim2.new(0, 0, 0.2, 0)
status.BackgroundTransparency = 1
status.Text = "Ready"
status.TextColor3 = Color3.fromRGB(100, 255, 100)
status.TextScaled = true
status.Font = Enum.Font.Gotham
status.Parent = frame

-- Кнопка телепорта
local button = Instance.new("TextButton")
button.Name = "TeleportButton"
button.Size = UDim2.new(0.8, 0, 0.3, 0)
button.Position = UDim2.new(0.1, 0, 0.35, 0)
button.Text = "▶ TELEPORT ◀"
button.BackgroundColor3 = Color3.fromRGB(255, 180, 0)
button.TextColor3 = Color3.fromRGB(0, 0, 0)
button.Font = Enum.Font.GothamBold
button.TextScaled = true
button.BorderSizePixel = 2
button.BorderColor3 = Color3.fromRGB(255, 255, 255)
button.AutoButtonColor = true
button.Parent = frame

-- Кнопка Discord
local discordButton = Instance.new("TextButton")
discordButton.Name = "DiscordButton"
discordButton.Size = UDim2.new(0.8, 0, 0.25, 0)
discordButton.Position = UDim2.new(0.1, 0, 0.7, 0)
discordButton.Text = "💬 JOIN THE DISCORD"
discordButton.BackgroundColor3 = Color3.fromRGB(88, 101, 242) -- Цвет Discord
discordButton.TextColor3 = Color3.fromRGB(255, 255, 255)
discordButton.Font = Enum.Font.GothamBold
discordButton.TextScaled = true
discordButton.BorderSizePixel = 2
discordButton.BorderColor3 = Color3.fromRGB(255, 255, 255)
discordButton.AutoButtonColor = true
discordButton.Parent = frame

-- Анимация пульсации кнопки телепорта
local runService = game:GetService("RunService")
local pulseConnection

pulseConnection = runService.Heartbeat:Connect(function()
    if button and button.Parent then
        local pulse = math.sin(os.clock() * 3) * 0.1 + 1
        button.BackgroundColor3 = Color3.fromRGB(
            255,
            180 * pulse,
            0
        )
    else
        pulseConnection:Disconnect()
    end
end)

-- Делаем перетаскивание
local dragging = false
local dragStart = nil
local startPos = nil

frame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging = true
        dragStart = input.Position
        startPos = frame.Position
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)

frame.InputChanged:Connect(function(input)
    if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
        local delta = input.Position - dragStart
        frame.Position = UDim2.new(
            startPos.X.Scale,
            startPos.X.Offset + delta.X,
            startPos.Y.Scale,
            startPos.Y.Offset + delta.Y
        )
    end
end)

-- Функция для копирования в буфер обмена
local function copyToClipboard(text)
    if setclipboard then
        setclipboard(text)
        return true
    elseif game:GetService("GuiService") and game:GetService("GuiService"):GetClipboard() then
        -- Альтернативный метод для некоторых исполнений
        game:GetService("GuiService"):SetClipboard(text)
        return true
    else
        return false
    end
end

-- Обработчик для кнопки Discord
discordButton.MouseButton1Click:Connect(function()
    local discordLink = "https://discord.gg/qR36JUm3qK"
    
    if copyToClipboard(discordLink) then
        status.Text = "✅ Discord link copied!"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
        discordButton.Text = "✅ COPIED!"
        
        task.wait(2)
        discordButton.Text = "💬 JOIN THE DISCORD"
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
    else
        status.Text = "❌ Failed to copy!"
        status.TextColor3 = Color3.fromRGB(255, 0, 0)
        
        -- Если копирование не удалось, показываем ссылку в статусе
        task.wait(1)
        status.Text = discordLink
        status.TextColor3 = Color3.fromRGB(100, 200, 255)
        
        task.wait(3)
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
    end
end)

-- Основная логика
local character = player.Character or player.CharacterAdded:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")

local function teleportTo(position)
    if character and character.Parent and humanoidRootPart then
        humanoidRootPart.CFrame = CFrame.new(position)
    end
end

local function teleportPlayerTo(playerToTeleport, position)
    local char = playerToTeleport.Character
    if char and char.Parent then
        local root = char:FindFirstChild("HumanoidRootPart")
        if root then
            root.CFrame = CFrame.new(position)
        end
    end
end

-- Переменные
local isTeleporting = false
local antiCheeseLoop = nil
local bearDanceLoop = nil

-- Функция для проверки команды игрока
local function isPlayerInTeam(teamName)
    local team = game:GetService("Teams"):FindFirstChild(teamName)
    if not team then
        return false
    end
    return player.Team == team
end

-- Функция для получения всех игроков в команде
local function getPlayersInTeam(teamName)
    local team = game:GetService("Teams"):FindFirstChild(teamName)
    if not team then
        return {}
    end
    
    local players = {}
    for _, plr in ipairs(game.Players:GetPlayers()) do
        if plr.Team == team then
            table.insert(players, plr)
        end
    end
    return players
end

-- Функция для запуска анти-сырной механики
local function startAntiCheese()
    if antiCheeseLoop then
        antiCheeseLoop:Disconnect()
        antiCheeseLoop = nil
    end
    
    status.Text = "⚠️ NO CHEESE! FLYING!"
    status.TextColor3 = Color3.fromRGB(255, 0, 0)
    
    antiCheeseLoop = runService.Heartbeat:Connect(function()
        if isPlayerInTeam("Survivors") and character and character.Parent then
            local currentPos = humanoidRootPart.Position
            local upPosition = currentPos + Vector3.new(0, 60, 0)
            teleportTo(upPosition)
        else
            if antiCheeseLoop then
                antiCheeseLoop:Disconnect()
                antiCheeseLoop = nil
                status.Text = "Ready"
                status.TextColor3 = Color3.fromRGB(100, 255, 100)
            end
        end
    end)
end

-- Функция для танца медведя
local function startBearDance()
    if bearDanceLoop then
        bearDanceLoop:Disconnect()
        bearDanceLoop = nil
    end
    
    -- Получаем всех игроков в команде Survivors
    local survivors = getPlayersInTeam("Survivors")
    if #survivors == 0 then
        status.Text = "No Survivors to teleport!"
        status.TextColor3 = Color3.fromRGB(255, 200, 0)
        return
    end
    
    -- Получаем позицию медведя (игрока в команде Bear)
    local bearPos = humanoidRootPart.Position
    
    -- Телепортируем всех выживших к медведю
    for _, survivor in ipairs(survivors) do
        teleportPlayerTo(survivor, bearPos)
    end
    
    status.Text = "🐻 TELEPORTED TO BEAR!"
    status.TextColor3 = Color3.fromRGB(255, 100, 100)
    
    -- Сохраняем исходные позиции выживших
    local originalPositions = {}
    for _, survivor in ipairs(survivors) do
        local char = survivor.Character
        if char and char.Parent then
            local root = char:FindFirstChild("HumanoidRootPart")
            if root then
                originalPositions[survivor] = root.Position
            end
        end
    end
    
    local startTime = os.clock()
    local duration = 10
    
    bearDanceLoop = runService.Heartbeat:Connect(function()
        local elapsed = os.clock() - startTime
        
        -- Проверяем, не вышел ли игрок из команды Bear
        if not isPlayerInTeam("Bear") then
            if bearDanceLoop then
                bearDanceLoop:Disconnect()
                bearDanceLoop = nil
                status.Text = "Ready"
                status.TextColor3 = Color3.fromRGB(100, 255, 100)
            end
            return
        end
        
        -- Проверяем время
        if elapsed >= duration then
            if bearDanceLoop then
                bearDanceLoop:Disconnect()
                bearDanceLoop = nil
                status.Text = "Ready"
                status.TextColor3 = Color3.fromRGB(100, 255, 100)
            end
            return
        end
        
        -- Двигаем выживших вперед-назад относительно их исходных позиций
        local step = math.sin(elapsed * 4) -- Быстрое движение вперед-назад
        
        for _, survivor in ipairs(survivors) do
            local char = survivor.Character
            if char and char.Parent then
                local root = char:FindFirstChild("HumanoidRootPart")
                if root then
                    local originalPos = originalPositions[survivor]
                    if originalPos then
                        -- Двигаем на 1 студ вперед и назад по оси Z
                        local newPos = originalPos + Vector3.new(0, 0, step * 1)
                        root.CFrame = CFrame.new(newPos)
                    end
                end
            end
        end
    end)
end

button.MouseButton1Click:Connect(function()
    if isTeleporting then
        return
    end
    
    local map = workspace:FindFirstChild("Map")
    if not map then
        warn("Map not found!")
        return
    end
    
    -- Проверяем команду игрока
    if isPlayerInTeam("Bear") then
        -- Игрок в команде Bear - телепортируем всех Survivors и запускаем танец
        startBearDance()
        return
    end
    
    -- Если игрок не в команде Survivors - выходим
    if not isPlayerInTeam("Survivors") then
        status.Text = "❌ Wrong team!"
        status.TextColor3 = Color3.fromRGB(255, 0, 0)
        task.wait(2)
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
        return
    end
    
    -- Проверяем Cheese
    local cheeseAltar = map:FindFirstChild("CheeseAltar")
    if not cheeseAltar then
        warn("CheeseAltar not found!")
        return
    end
    
    local items = cheeseAltar:FindFirstChild("Items")
    if not items then
        warn("Items not found!")
        return
    end
    
    local item = items:FindFirstChild("Item")
    if not item then
        warn("Item not found!")
        return
    end
    
    local cheesePart = item:FindFirstChild("Cheese")
    
    -- Если Cheese нет - запускаем анти-сыр
    if not cheesePart or not cheesePart:IsA("BasePart") then
        warn("Cheese not found! Starting anti-cheese!")
        startAntiCheese()
        return
    end
    
    -- Если Cheese есть, но игрок в Survivors - телепортируем к сыру
    if isPlayerInTeam("Survivors") then
        -- Проверяем Detect
        local base = cheeseAltar:FindFirstChild("Base")
        if not base then
            warn("Base not found!")
            return
        end
        
        local detectPart = base:FindFirstChild("Detect")
        if not detectPart or not detectPart:IsA("BasePart") then
            warn("Detect not found!")
            return
        end
        
        isTeleporting = true
        button.Text = "⏳ TELEPORTING..."
        button.BackgroundColor3 = Color3.fromRGB(150, 150, 150)
        button.TextColor3 = Color3.fromRGB(100, 100, 100)
        status.Text = "🔄 TELEPORTING..."
        status.TextColor3 = Color3.fromRGB(100, 200, 255)
        
        local originalPosition = humanoidRootPart.Position
        
        teleportTo(cheesePart.Position)
        task.wait(1)
        
        teleportTo(detectPart.Position)
        task.wait(0.5)
        
        local belowPosition = detectPart.Position - Vector3.new(0, 2, 0)
        teleportTo(belowPosition)
        task.wait(0.5)
        
        teleportTo(originalPosition)
        
        isTeleporting = false
        button.Text = "▶ TELEPORT ◀"
        button.BackgroundColor3 = Color3.fromRGB(255, 180, 0)
        button.TextColor3 = Color3.fromRGB(0, 0, 0)
        status.Text = "✅ Teleport complete!"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
        
        task.wait(1.5)
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
    end
end)

-- Обработка перезагрузки персонажа
player.CharacterAdded:Connect(function(newCharacter)
    character = newCharacter
    humanoidRootPart = character:WaitForChild("HumanoidRootPart")
end)

-- Обработка смены команды
player:GetPropertyChangedSignal("Team"):Connect(function()
    if antiCheeseLoop then
        antiCheeseLoop:Disconnect()
        antiCheeseLoop = nil
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
    end
    
    if bearDanceLoop then
        bearDanceLoop:Disconnect()
        bearDanceLoop = nil
        status.Text = "Ready"
        status.TextColor3 = Color3.fromRGB(100, 255, 100)
    end
end)

Features & Information

making cheese altar puzzle and also if you are bear it teleports players to you PLS JOIN DISCORD

Community Comments (0)

No comments yet for this script.

More Scripts for BEAR (Alpha)