Win all match
Key Required

Win all match

CaseOh's BasicsA2000A2000 1.9K views 24 executesUpdated Nov 15, 2025
5.0/ 5(2 votes)
20100% Positive
Lua Script•451 lines (15909 chars)
-- Updated LocalScript: Draggable UI with Tabs (Auto Win & Stamina) and Roblox-style Alerts
-- Fixes: Robust across respawns/deaths - always uses current character/HRP
-- GUI always creates; functions check for valid character before running
-- Slider for Inf Stamina delay
-- Fixed TweenPosition with proper enums
-- Place this as a LocalScript in StarterPlayerScripts or run it in the client

local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")

-- Function to show Roblox-style alert
local function showAlert(message, title, duration)
    duration = duration or 5
    
    local alertFrame = Instance.new("Frame")
    alertFrame.Size = UDim2.new(0, 300, 0, 100)
    alertFrame.Position = UDim2.new(1, -310, 0, 10)
    alertFrame.BackgroundColor3 = Color3.fromRGB(0, 162, 255)
    alertFrame.BorderSizePixel = 0
    alertFrame.Parent = PlayerGui
    
    alertFrame:TweenPosition(UDim2.new(1, -310, 0, 10), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.3, true)
    
    local corner = Instance.new("UICorner")
    corner.CornerRadius = UDim.new(0, 8)
    corner.Parent = alertFrame
    
    local titleLabel = Instance.new("TextLabel")
    titleLabel.Size = UDim2.new(1, -10, 0, 25)
    titleLabel.Position = UDim2.new(0, 5, 0, 5)
    titleLabel.BackgroundTransparency = 1
    titleLabel.Text = title or "Alert"
    titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
    titleLabel.TextScaled = true
    titleLabel.Font = Enum.Font.SourceSansBold
    titleLabel.TextXAlignment = Enum.TextXAlignment.Left
    titleLabel.Parent = alertFrame
    
    local messageLabel = Instance.new("TextLabel")
    messageLabel.Size = UDim2.new(1, -10, 0, 40)
    messageLabel.Position = UDim2.new(0, 5, 0, 30)
    messageLabel.BackgroundTransparency = 1
    messageLabel.Text = message
    messageLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
    messageLabel.TextScaled = true
    messageLabel.Font = Enum.Font.SourceSans
    messageLabel.TextXAlignment = Enum.TextXAlignment.Left
    messageLabel.TextYAlignment = Enum.TextYAlignment.Top
    messageLabel.Parent = alertFrame
    
    local okButton = Instance.new("TextButton")
    okButton.Size = UDim2.new(0, 60, 0, 25)
    okButton.Position = UDim2.new(1, -70, 1, -30)
    okButton.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
    okButton.Text = "OK"
    okButton.TextColor3 = Color3.fromRGB(255, 255, 255)
    okButton.TextScaled = true
    okButton.Font = Enum.Font.SourceSansBold
    okButton.Parent = alertFrame
    
    local buttonCorner = Instance.new("UICorner")
    buttonCorner.CornerRadius = UDim.new(0, 4)
    buttonCorner.Parent = okButton
    
    local dismissed = false
    okButton.MouseButton1Click:Connect(function()
        if not dismissed then
            dismissed = true
            dismissAlert()
        end
    end)
    
    local function dismissAlert()
        local fadeOut = TweenService:Create(alertFrame, TweenInfo.new(0.3), {BackgroundTransparency = 1})
        local fadeTitle = TweenService:Create(titleLabel, TweenInfo.new(0.3), {TextTransparency = 1})
        local fadeMessage = TweenService:Create(messageLabel, TweenInfo.new(0.3), {TextTransparency = 1})
        local fadeButton = TweenService:Create(okButton, TweenInfo.new(0.3), {BackgroundTransparency = 1, TextTransparency = 1})
        fadeOut:Play()
        fadeTitle:Play()
        fadeMessage:Play()
        fadeButton:Play()
        fadeOut.Completed:Connect(function()
            alertFrame:Destroy()
        end)
    end
    
    task.delay(duration, dismissAlert)
end

-- Create ScreenGui (always create, even in menu)
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "AutoWinGui"
screenGui.Parent = PlayerGui
screenGui.ResetOnSpawn = false

-- Main Frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 180, 0, 140)
frame.Position = UDim2.new(0, 10, 0, 10)
frame.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
frame.BorderSizePixel = 0
frame.Parent = screenGui

local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 8)
frameCorner.Parent = frame

-- Tab Bar
local tabBar = Instance.new("Frame")
tabBar.Size = UDim2.new(1, 0, 0, 20)
tabBar.BackgroundTransparency = 1
tabBar.Parent = frame

local autoWinTab = Instance.new("TextButton")
autoWinTab.Size = UDim2.new(0.5, -1, 1, 0)
autoWinTab.Position = UDim2.new(0, 1, 0, 0)
autoWinTab.BackgroundColor3 = Color3.fromRGB(0, 162, 255)
autoWinTab.Text = "Auto"
autoWinTab.TextColor3 = Color3.fromRGB(255, 255, 255)
autoWinTab.TextScaled = true
autoWinTab.Font = Enum.Font.SourceSansBold
autoWinTab.Parent = tabBar

local autoWinTabCorner = Instance.new("UICorner")
autoWinTabCorner.CornerRadius = UDim.new(0, 4)
autoWinTabCorner.Parent = autoWinTab

local staminaTab = Instance.new("TextButton")
staminaTab.Size = UDim2.new(0.5, 0, 1, 0)
staminaTab.Position = UDim2.new(0.5, 0, 0, 0)
staminaTab.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
staminaTab.Text = "Stam"
staminaTab.TextColor3 = Color3.fromRGB(255, 255, 255)
staminaTab.TextScaled = true
staminaTab.Font = Enum.Font.SourceSansBold
staminaTab.Parent = tabBar

local staminaTabCorner = Instance.new("UICorner")
staminaTabCorner.CornerRadius = UDim.new(0, 4)
staminaTabCorner.Parent = staminaTab

-- Content Area
local contentArea = Instance.new("Frame")
contentArea.Size = UDim2.new(1, -10, 1, -25)
contentArea.Position = UDim2.new(0, 5, 0, 25)
contentArea.BackgroundTransparency = 1
contentArea.Parent = frame

-- Auto Win Content
local autoWinContent = Instance.new("Frame")
autoWinContent.Size = UDim2.new(1, 0, 1, 0)
autoWinContent.BackgroundTransparency = 1
autoWinContent.Visible = true
autoWinContent.Parent = contentArea

local autoWinButton = Instance.new("TextButton")
autoWinButton.Size = UDim2.new(0, 140, 0, 30)
autoWinButton.Position = UDim2.new(0.5, -70, 0.5, -15)
autoWinButton.BackgroundColor3 = Color3.fromRGB(0, 162, 255)
autoWinButton.Text = "Auto Win"
autoWinButton.TextColor3 = Color3.fromRGB(255, 255, 255)
autoWinButton.TextScaled = true
autoWinButton.Font = Enum.Font.SourceSansBold
autoWinButton.Parent = autoWinContent

local autoWinButtonCorner = Instance.new("UICorner")
autoWinButtonCorner.CornerRadius = UDim.new(0, 6)
autoWinButtonCorner.Parent = autoWinButton

-- Stamina Content
local staminaContent = Instance.new("Frame")
staminaContent.Size = UDim2.new(1, 0, 1, 0)
staminaContent.BackgroundTransparency = 1
staminaContent.Visible = false
staminaContent.Parent = contentArea

local infStaminaButton = Instance.new("TextButton")
infStaminaButton.Size = UDim2.new(0, 140, 0, 30)
infStaminaButton.Position = UDim2.new(0.5, -70, 0, 0)
infStaminaButton.BackgroundColor3 = Color3.fromRGB(255, 162, 0)
infStaminaButton.Text = "Inf Stamina (OFF)"
infStaminaButton.TextColor3 = Color3.fromRGB(255, 255, 255)
infStaminaButton.TextScaled = true
infStaminaButton.Font = Enum.Font.SourceSansBold
infStaminaButton.Parent = staminaContent

local infStaminaCorner = Instance.new("UICorner")
infStaminaCorner.CornerRadius = UDim.new(0, 6)
infStaminaCorner.Parent = infStaminaButton

-- Delay Slider
local sliderFrame = Instance.new("Frame")
sliderFrame.Size = UDim2.new(1, 0, 0, 40)
sliderFrame.Position = UDim2.new(0, 0, 0, 40)
sliderFrame.BackgroundTransparency = 1
sliderFrame.Parent = staminaContent

local sliderBg = Instance.new("Frame")
sliderBg.Size = UDim2.new(0.8, 0, 0, 6)
sliderBg.Position = UDim2.new(0.1, 0, 0.5, -3)
sliderBg.BackgroundColor3 = Color3.fromRGB(100, 100, 100)
sliderBg.Parent = sliderFrame

local sliderBgCorner = Instance.new("UICorner")
sliderBgCorner.CornerRadius = UDim.new(0, 3)
sliderBgCorner.Parent = sliderBg

local sliderKnob = Instance.new("TextButton")
sliderKnob.Size = UDim2.new(0, 20, 0, 20)
sliderKnob.BackgroundColor3 = Color3.fromRGB(0, 162, 255)
sliderKnob.Text = ""
sliderKnob.Parent = sliderFrame

local sliderKnobCorner = Instance.new("UICorner")
sliderKnobCorner.CornerRadius = UDim.new(1, 0)
sliderKnobCorner.Parent = sliderKnob

local delayLabel = Instance.new("TextLabel")
delayLabel.Size = UDim2.new(1, 0, 0.5, 0)
delayLabel.BackgroundTransparency = 1
delayLabel.Text = "Delay: 1.5s"
delayLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
delayLabel.TextScaled = true
delayLabel.Font = Enum.Font.SourceSans
delayLabel.Parent = sliderFrame

local minLabel = Instance.new("TextLabel")
minLabel.Size = UDim2.new(0.1, 0, 0.5, 0)
minLabel.Position = UDim2.new(0, 0, 0.5, 0)
minLabel.BackgroundTransparency = 1
minLabel.Text = "0.5s"
minLabel.TextColor3 = Color3.fromRGB(150, 150, 150)
minLabel.TextScaled = true
minLabel.Parent = sliderFrame

local maxLabel = Instance.new("TextLabel")
maxLabel.Size = UDim2.new(0.1, 0, 0.5, 0)
maxLabel.Position = UDim2.new(0.9, 0, 0.5, 0)
maxLabel.BackgroundTransparency = 1
maxLabel.Text = "5s"
maxLabel.TextColor3 = Color3.fromRGB(150, 150, 150)
maxLabel.TextScaled = true
maxLabel.Parent = sliderFrame

-- Slider logic
local MIN_DELAY = 0.5
local MAX_DELAY = 5.0
local infStaminaDelay = 1.5

local function updateSlider()
    local relativeX = math.clamp((sliderKnob.AbsolutePosition.X - sliderBg.AbsolutePosition.X) / sliderBg.AbsoluteSize.X, 0, 1)
    infStaminaDelay = MIN_DELAY + (MAX_DELAY - MIN_DELAY) * relativeX
    delayLabel.Text = string.format("Delay: %.1fs", infStaminaDelay)
    sliderKnob.Position = UDim2.new(relativeX, -10, 0.5, -10)
end

sliderKnob.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        local conn; conn = input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then conn:Disconnect() end
        end)
        local moveConn; moveConn = UserInputService.InputChanged:Connect(function(input2)
            if input2.UserInputType == Enum.UserInputType.MouseMovement then
                local delta = input2.Position.X - input.Position.X
                local newX = math.clamp(sliderKnob.Position.X.Scale + (delta / sliderBg.AbsoluteSize.X), 0, 1)
                sliderKnob.Position = UDim2.new(newX, sliderKnob.Position.X.Offset, sliderKnob.Position.Y.Scale, sliderKnob.Position.Y.Offset)
                updateSlider()
            end
        end)
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then moveConn:Disconnect() end
        end)
    end
end)

-- Initial slider position
local initRel = (infStaminaDelay - MIN_DELAY) / (MAX_DELAY - MIN_DELAY)
sliderKnob.Position = UDim2.new(initRel, -10, 0.5, -10)
updateSlider()

-- Tab switching
local function switchTab(tab)
    autoWinContent.Visible = tab == "Auto"
    staminaContent.Visible = tab == "Stam"
    autoWinTab.BackgroundColor3 = tab == "Auto" and Color3.fromRGB(0, 162, 255) or Color3.fromRGB(70, 70, 70)
    staminaTab.BackgroundColor3 = tab == "Stam" and Color3.fromRGB(0, 162, 255) or Color3.fromRGB(70, 70, 70)
end

autoWinTab.MouseButton1Click:Connect(function() switchTab("Auto") end)
staminaTab.MouseButton1Click:Connect(function() switchTab("Stam") end)
switchTab("Auto")

-- Draggable frame
local dragging = false
frame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging = true
        local startPos = frame.Position
        local startInput = input.Position
        local conn; conn = input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
                conn:Disconnect()
            end
        end)
        local moveConn = UserInputService.InputChanged:Connect(function(input2)
            if dragging and input2.UserInputType == Enum.UserInputType.MouseMovement then
                local delta = input2.Position - startInput
                frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
            end
        end)
    end
end)

-- Find water part
local function findWaterPart()
    local success, part = pcall(function()
        return workspace.map.WaterFountains["water fountain"].BOX
    end)
    return success and part
end

-- Get current HRP
local function getHRP()
    return LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
end

-- Fire food touches
local function fireFoodTouches()
    local hrp = getHRP()
    if not hrp then
        showAlert("No character detected! Execute in match.", "Error")
        return false
    end
    
    local success, foodFolder = pcall(function()
        return workspace.map.Lunchables.food
    end)
    
    if not success or not foodFolder then
        showAlert("Food not found. EXECUTE IN-ROUND or TRY A NEW MAP!!", "Error")
        return false
    end
    
    local count = 0
    for _, obj in foodFolder:GetChildren() do
        if obj:IsA("BasePart") then
            pcall(function()
                firetouchinterest(obj, hrp, 0)
                task.wait(0.1)
                firetouchinterest(obj, hrp, 1)
            end)
            count = count + 1
        end
    end
    return count > 0
end

-- Teleport to exit
local function teleportToExit()
    local hrp = getHRP()
    if not hrp then return false end
    
    local success, exitDoor = pcall(function()
        return workspace.map.Doors["Exit Door"]
    end)
    
    if success and exitDoor then
        local target = exitDoor:IsA("BasePart") and exitDoor or (exitDoor.PrimaryPart or exitDoor:FindFirstChildOfClass("BasePart"))
        if target then
            hrp.CFrame = target.CFrame + Vector3.new(0, 5, 0)
            return true
        end
    end
    return false
end

-- Auto Win click
autoWinButton.MouseButton1Click:Connect(function()
    local hrp = getHRP()
    if not hrp then
        showAlert("Do not execute in the Menu! Execute this in Match!!", "Error")
        return
    end
    
    autoWinButton.Text = "Running..."
    autoWinButton.BackgroundColor3 = Color3.fromRGB(255, 162, 0)
    
    task.spawn(function()
        if fireFoodTouches() then
            task.wait(1)
            teleportToExit()
        end
        autoWinButton.Text = "Auto Win"
        autoWinButton.BackgroundColor3 = Color3.fromRGB(0, 162, 255)
    end)
end)

-- Inf Stamina variables
local infStaminaEnabled = false
local infStaminaLoop = nil

-- Toggle Inf Stamina
local function toggleInfStamina()
    local hrp = getHRP()
    if not hrp then
        showAlert("Do not execute in the Menu! Execute this in Match!!", "Error")
        return
    end
    
    local waterPart = findWaterPart()
    if not waterPart then
        showAlert("Water Fountain not found. EXECUTE IN-ROUND or TRY A NEW MAP!!", "Error")
        return
    end
    
    infStaminaEnabled = not infStaminaEnabled
    
    if infStaminaEnabled then
        infStaminaButton.Text = "Inf Stamina (ON)"
        infStaminaButton.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
        
        infStaminaLoop = task.spawn(function()
            while infStaminaEnabled do
                local currentHRP = getHRP()
                if currentHRP then
                    pcall(function()
                        firetouchinterest(waterPart, currentHRP, 0)
                        task.wait(0.1)
                        firetouchinterest(waterPart, currentHRP, 1)
                    end)
                end
                task.wait(infStaminaDelay)
            end
        end)
    else
        infStaminaButton.Text = "Inf Stamina (OFF)"
        infStaminaButton.BackgroundColor3 = Color3.fromRGB(255, 162, 0)
        if infStaminaLoop then
            task.cancel(infStaminaLoop)
            infStaminaLoop = nil
        end
    end
end

infStaminaButton.MouseButton1Click:Connect(toggleInfStamina)

print("Robust AutoWin UI loaded! Works across respawns/deaths.")

Features & Information

Inf Stamina Ui is made by the code!! Teleport to exit door after eating all foods (Auto Win) Dead Game :0 Fixed non re-runnable buttons Not draggable I just lied on the code
#Epik#CaseohFat

Community Comments (0)

No comments yet for this script.

More Scripts for CaseOh's Basics