-- Script Local (LocalScript) - Coloque este script em StarterPlayerScripts local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local Player = Players.LocalPlayer local PlayerGui = Player:WaitForChild("PlayerGui") local Character = Player.Character or Player.CharacterAdded:Wait() local Humanoid = Character:WaitForChild("Humanoid") local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "InsightGui" ScreenGui.Parent = PlayerGui local SeeButton = Instance.new("TextButton") SeeButton.Name = "SeeButton" SeeButton.Size = UDim2.new(0, 80, 0, 30) -- Tamanho pequeno SeeButton.Position = UDim2.new(0, 10, 0, 10) -- Canto superior esquerdo SeeButton.BackgroundColor3 = Color3.new(0, 0, 0) -- Preto SeeButton.TextColor3 = Color3.new(1, 1, 1) -- Branco SeeButton.Text = "I see you.." SeeButton.Font = Enum.Font.SourceSansBold SeeButton.FontSize = Enum.FontSize.Size14 SeeButton.Parent = ScreenGui local blurEffect = Instance.new("BlurEffect") blurEffect.Name = "InsightBlur" blurEffect.Size = 0 -- Começa sem blur blurEffect.Parent = game.Lighting local isBlurActive = false local originalWalkSpeed = Humanoid.WalkSpeed -- Armazena a velocidade original do jogador local activeHighlights = {} -- Tabela para armazenar todos os highlights ativos local function findAllNonCollidingParts() local workspaceChildren = workspace:GetChildren() local nonCollidingParts = {} for _, child in pairs(workspaceChildren) do if child:IsA("BasePart") and not child.CanCollide and child.Transparency ~= 1 then table.insert(nonCollidingParts, child) end end return nonCollidingParts end local function applyHighlight(part) if not part then return end local highlight = Instance.new("Highlight") highlight.FillColor = Color3.fromRGB(255, 255, 0) -- Amarelo highlight.OutlineColor = Color3.fromRGB(255, 255, 0) highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Parent = part table.insert(activeHighlights, highlight) -- Adiciona à lista de highlights ativos return highlight end SeeButton.MouseButton1Click:Connect(function() if isBlurActive then return end -- Evita cliques múltiplos enquanto o blur está ativo isBlurActive = true SeeButton.Text = "Scanning..." -- Muda o texto do botão -- Ajusta a velocidade do jogador Humanoid.WalkSpeed = 6 -- Tween para aplicar o blur (agora com Size = 8) local blurTweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) local blurTween = TweenService:Create(blurEffect, blurTweenInfo, {Size = 8}) blurTween:Play() -- Espera um pouco para o blur começar e depois tenta achar as partes task.wait(0.5) local partsToHighlight = findAllNonCollidingParts() for _, part in pairs(partsToHighlight) do applyHighlight(part) end task.wait(5) -- Espera 5 segundos com o blur e os highlights -- Tween para remover o blur local unblurTweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) local unblurTween = TweenService:Create(blurEffect, unblurTweenInfo, {Size = 0}) unblurTween:Play() -- Remove todos os highlights ativos for _, highlight in pairs(activeHighlights) do highlight:Destroy() end table.clear(activeHighlights) -- Limpa a tabela -- Restaura a velocidade do jogador Humanoid.WalkSpeed = originalWalkSpeed isBlurActive = false SeeButton.Text = "I see you.." -- Volta o texto original do botão end)