invisible script FE
Key RequiredUniversal

invisible script FE

Universal ScriptNormaziah_myNormaziah_my 1.6K views 4.4K executesUpdated Mar 23, 2026
0.0/ 5(1 votes)
010% Positive
Lua Script•119 lines (3379 chars)
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")

local invisible = false
local SPEED = 30

-- GUI Setup
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "InvisScript"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = game.CoreGui

local Button = Instance.new("TextButton")
Button.Size = UDim2.new(0, 120, 0, 45)
Button.Position = UDim2.new(0, 100, 0, 100)
Button.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Button.TextColor3 = Color3.fromRGB(255, 255, 255)
Button.Text = "Invis: OFF"
Button.Font = Enum.Font.GothamBold
Button.TextSize = 14
Button.BorderSizePixel = 0
Button.Parent = ScreenGui

local Corner = Instance.new("UICorner")
Corner.CornerRadius = UDim.new(0, 8)
Corner.Parent = Button

-- Dragging
local dragging = false
local dragStart = nil
local startPos = nil

Button.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging = true
        dragStart = input.Position
        startPos = Button.Position
    end
end)

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

Button.InputEnded:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging = false
    end
end)

-- Invisible / Visible toggle
local function setInvisible(state)
    Character = LocalPlayer.Character
    if not Character then return end
    for _, part in pairs(Character:GetDescendants()) do
        if part:IsA("BasePart") or part:IsA("Decal") then
            part.LocalTransparencyModifier = state and 1 or 0
        end
    end
end

-- Speed
local function setSpeed(speed)
    Character = LocalPlayer.Character
    if not Character then return end
    Humanoid = Character:FindFirstChildOfClass("Humanoid")
    if Humanoid then
        Humanoid.WalkSpeed = speed
    end
end

-- Button click
local isDragged = false
local mouseDown = nil

Button.MouseButton1Down:Connect(function()
    mouseDown = tick()
end)

Button.MouseButton1Up:Connect(function()
    if mouseDown and (tick() - mouseDown) < 0.2 then
        invisible = not invisible
        if invisible then
            Button.Text = "Invis: ON"
            Button.BackgroundColor3 = Color3.fromRGB(0, 170, 100)
            setInvisible(true)
            setSpeed(SPEED)
        else
            Button.Text = "Invis: OFF"
            Button.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
            setInvisible(false)
            setSpeed(16)
        end
    end
    mouseDown = nil
end)

-- Keep invis on respawn
LocalPlayer.CharacterAdded:Connect(function(char)
    Character = char
    Humanoid = char:WaitForChild("Humanoid")
    task.wait(0.5)
    if invisible then
        setInvisible(true)
        setSpeed(SPEED)
    else
        setSpeed(16)
    end
end)

Features & Information

Y
#Y

Community Comments (1)

Lilbro803Lilbro803Jul 3, 2026

kys, mf

More Scripts for Universal Scripts