local plr = game.Players.LocalPlayer local RunService = game:GetService("RunService") local gui = Instance.new("ScreenGui") gui.Name = "FlashReversoByDcDis" gui.ResetOnSpawn = false gui.Parent = plr:WaitForChild("PlayerGui") local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 240, 0, 220) frame.Position = UDim2.new(0, 100, 0, 100) frame.BackgroundColor3 = Color3.fromRGB(18, 18, 18) frame.BorderSizePixel = 0 frame.Active = true frame.Draggable = true frame.BackgroundTransparency = 0.05 frame.Parent = gui Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 12) local title = Instance.new("TextLabel", frame) title.Size = UDim2.new(1, 0, 0, 30) title.Position = UDim2.new(0, 0, 0, 0) title.BackgroundTransparency = 1 title.Text = "⚡ Flash Reverso by dc.dis (TikTok)" title.Font = Enum.Font.GothamBold title.TextSize = 16 title.TextColor3 = Color3.fromRGB(255, 255, 85) title.TextStrokeTransparency = 0.6 -- Flash state local activeDirection = nil local loop = false local conn = nil local currentTrail = nil local a0, a1 = nil, nil local function getHRP() local char = plr.Character or plr.CharacterAdded:Wait() return char:WaitForChild("HumanoidRootPart") end local function cleanupTrail() if conn then conn:Disconnect() end if currentTrail then currentTrail:Destroy() end if a0 then a0:Destroy() end if a1 then a1:Destroy() end end local function startFlashLoop(dir) loop = true cleanupTrail() local hrp = getHRP() currentTrail = Instance.new("Trail") currentTrail.Color = ColorSequence.new(Color3.new(1, 1, 0)) currentTrail.Lifetime = 0.15 currentTrail.LightEmission = 1 currentTrail.Transparency = NumberSequence.new(0.3) currentTrail.MinLength = 0.1 currentTrail.FaceCamera = true currentTrail.Enabled = true currentTrail.Parent = hrp a0 = Instance.new("Attachment", hrp) a1 = Instance.new("Attachment", hrp) a0.Position = Vector3.new(0, 1.2, 0) a1.Position = Vector3.new(0, -1.2, 0) currentTrail.Attachment0 = a0 currentTrail.Attachment1 = a1 local vec = Vector3.zero if dir == "North" then vec = hrp.CFrame.LookVector elseif dir == "South" then vec = -hrp.CFrame.LookVector elseif dir == "East" then vec = hrp.CFrame.RightVector elseif dir == "West" then vec = -hrp.CFrame.RightVector end local moveBack = false local step = 0 conn = RunService.RenderStepped:Connect(function() if not loop or activeDirection ~= dir then cleanupTrail() return end local direction = moveBack and -vec or vec hrp.CFrame = hrp.CFrame + direction * 1.6 step += 1 if step >= 5 then moveBack = not moveBack step = 0 end end) end -- Button Generator local buttons = {} local function makeButton(dir, pos) local btn = Instance.new("TextButton", frame) btn.Size = UDim2.new(0, 80, 0, 40) btn.Position = pos btn.Text = dir btn.Name = dir btn.Font = Enum.Font.GothamBlack btn.TextSize = 15 btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.BackgroundColor3 = Color3.fromRGB(35, 35, 35) btn.AutoButtonColor = true Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 8) buttons[dir] = btn btn.MouseButton1Click:Connect(function() if activeDirection == dir then activeDirection = nil loop = false btn.Text = dir btn.BackgroundColor3 = Color3.fromRGB(35, 35, 35) cleanupTrail() else for _, child in pairs(buttons) do child.Text = child.Name child.BackgroundColor3 = Color3.fromRGB(35, 35, 35) end activeDirection = dir btn.Text = dir .. " (ON)" btn.BackgroundColor3 = Color3.fromRGB(0, 170, 0) startFlashLoop(dir) end end) end -- Function to rebuild buttons local function setupButtons() for _, b in pairs(buttons) do b:Destroy() end buttons = {} makeButton("North", UDim2.new(0, 80, 0, 40)) makeButton("South", UDim2.new(0, 80, 0, 150)) makeButton("East", UDim2.new(0, 150, 0, 95)) makeButton("West", UDim2.new(0, 10, 0, 95)) end -- Initial button creation setupButtons() -- Respawn handler plr.CharacterAdded:Connect(function() wait(1) setupButtons() if activeDirection then startFlashLoop(activeDirection) end end)