Created
May 19, 2026 00:05
-
-
Save DuyNgao2306/a68ea574f8fde52e61b05bdef05f7142 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --// ANTI DUPLICATE | |
| if getgenv().CrowUI_Loaded then return end | |
| getgenv().CrowUI_Loaded = true | |
| -- SERVICES | |
| local Players = game:GetService("Players") | |
| local RunService = game:GetService("RunService") | |
| local Lighting = game:GetService("Lighting") | |
| local Stats = game:GetService("Stats") | |
| local VirtualUser = game:GetService("VirtualUser") | |
| local UIS = game:GetService("UserInputService") | |
| local player = Players.LocalPlayer | |
| local playerGui = player:WaitForChild("PlayerGui") | |
| -- CLEAR OLD | |
| for _,v in pairs(playerGui:GetChildren()) do | |
| if v.Name == "CrowUI" then v:Destroy() end | |
| end | |
| -- GUI | |
| local gui = Instance.new("ScreenGui", playerGui) | |
| gui.Name = "CrowUI" | |
| gui.ResetOnSpawn = false | |
| -- VERSION | |
| local version = Instance.new("TextLabel", gui) | |
| version.Size = UDim2.new(0,120,0,20) | |
| version.Position = UDim2.new(1,-10,1,-10) | |
| version.AnchorPoint = Vector2.new(1,1) | |
| version.BackgroundTransparency = 1 | |
| version.Text = "Crow UI vFINAL" | |
| version.TextScaled = true | |
| version.TextColor3 = Color3.new(1,1,1) | |
| -- ================= DRAG (FIX MOBILE + PC) ================= | |
| local function drag(frame) | |
| local dragging = false | |
| local dragStart, startPos | |
| frame.InputBegan:Connect(function(input) | |
| if input.UserInputType == Enum.UserInputType.MouseButton1 | |
| or input.UserInputType == Enum.UserInputType.Touch then | |
| dragging = true | |
| dragStart = input.Position | |
| startPos = frame.Position | |
| end | |
| end) | |
| frame.InputEnded:Connect(function(input) | |
| if input.UserInputType == Enum.UserInputType.MouseButton1 | |
| or input.UserInputType == Enum.UserInputType.Touch then | |
| dragging = false | |
| end | |
| end) | |
| UIS.InputChanged:Connect(function(input) | |
| if dragging and ( | |
| input.UserInputType == Enum.UserInputType.MouseMovement | |
| or input.UserInputType == Enum.UserInputType.Touch | |
| ) 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) | |
| end | |
| -- ================= OPEN BUTTON ================= | |
| local openBtn = Instance.new("TextButton", gui) | |
| openBtn.Size = UDim2.new(0,55,0,55) | |
| openBtn.Position = UDim2.new(0,20,0.5,-25) | |
| openBtn.Text = "≡" | |
| openBtn.TextScaled = true | |
| openBtn.BackgroundColor3 = Color3.fromRGB(255,255,255) | |
| Instance.new("UICorner", openBtn) | |
| drag(openBtn) | |
| -- ================= MENU ================= | |
| local menu = Instance.new("Frame", gui) | |
| menu.Size = UDim2.new(0,240,0,320) | |
| menu.Position = UDim2.new(0.5,-120,0.5,-160) | |
| menu.BackgroundColor3 = Color3.fromRGB(245,245,245) | |
| menu.Visible = false | |
| Instance.new("UICorner", menu) | |
| drag(menu) | |
| -- TITLE | |
| local title = Instance.new("TextLabel", menu) | |
| title.Size = UDim2.new(1,0,0,40) | |
| title.Text = "Setting ⚙️" | |
| title.TextScaled = true | |
| title.BackgroundTransparency = 1 | |
| title.TextColor3 = Color3.fromRGB(0,200,200) | |
| -- SCROLL | |
| local scroll = Instance.new("ScrollingFrame", menu) | |
| scroll.Size = UDim2.new(1,0,1,-45) | |
| scroll.Position = UDim2.new(0,0,0,45) | |
| scroll.BackgroundTransparency = 1 | |
| scroll.AutomaticCanvasSize = Enum.AutomaticSize.Y | |
| local layout = Instance.new("UIListLayout", scroll) | |
| layout.Padding = UDim.new(0,8) | |
| -- ================= SWITCH (FIX CLICK) ================= | |
| local function createSwitch(text,order) | |
| local frame = Instance.new("Frame", scroll) | |
| frame.Size = UDim2.new(0.9,0,0,45) | |
| frame.LayoutOrder = order | |
| frame.BackgroundColor3 = Color3.fromRGB(230,230,230) | |
| Instance.new("UICorner", frame) | |
| local label = Instance.new("TextLabel", frame) | |
| label.Size = UDim2.new(0.6,0,1,0) | |
| label.Text = text | |
| label.BackgroundTransparency = 1 | |
| label.TextScaled = true | |
| local toggleBtn = Instance.new("TextButton", frame) | |
| toggleBtn.Size = UDim2.new(0,50,0,25) | |
| toggleBtn.Position = UDim2.new(1,-60,0.5,-12) | |
| toggleBtn.Text = "" | |
| toggleBtn.BackgroundColor3 = Color3.fromRGB(180,180,180) | |
| Instance.new("UICorner", toggleBtn) | |
| local knob = Instance.new("Frame", toggleBtn) | |
| knob.Size = UDim2.new(0,25,0,25) | |
| knob.BackgroundColor3 = Color3.new(1,1,1) | |
| Instance.new("UICorner", knob) | |
| local state = false | |
| frame:SetAttribute("State",false) | |
| local function set(s) | |
| state = s | |
| frame:SetAttribute("State",s) | |
| toggleBtn.BackgroundColor3 = s and Color3.fromRGB(0,200,100) or Color3.fromRGB(180,180,180) | |
| knob.Position = s and UDim2.new(1,-25,0,0) or UDim2.new(0,0,0,0) | |
| end | |
| toggleBtn.MouseButton1Click:Connect(function() | |
| set(not state) | |
| end) | |
| toggleBtn.Activated:Connect(function() | |
| set(not state) | |
| end) | |
| return frame | |
| end | |
| -- SWITCHES | |
| local fpsSw = createSwitch("FPS",1) | |
| local pingSw = createSwitch("Ping",2) | |
| local gfxSw = createSwitch("Graphics",3) | |
| local partSw = createSwitch("Part Reduce",4) | |
| local hideSw = createSwitch("Hide UI",5) | |
| local flySw = createSwitch("Fly",6) | |
| local afkSw = createSwitch("Anti AFK",7) | |
| -- ================= FPS ================= | |
| local fpsLabel = Instance.new("TextLabel", gui) | |
| fpsLabel.Position = UDim2.new(0,10,0,10) | |
| fpsLabel.Size = UDim2.new(0,120,0,25) | |
| fpsLabel.BackgroundTransparency = 1 | |
| RunService.RenderStepped:Connect(function(dt) | |
| if fpsSw:GetAttribute("State") then | |
| fpsLabel.Text = "FPS: "..math.floor(1/dt) | |
| else | |
| fpsLabel.Text = "" | |
| end | |
| end) | |
| -- ================= PING ================= | |
| local pingLabel = Instance.new("TextLabel", gui) | |
| pingLabel.Position = UDim2.new(0,10,0,35) | |
| pingLabel.Size = UDim2.new(0,120,0,25) | |
| pingLabel.BackgroundTransparency = 1 | |
| RunService.RenderStepped:Connect(function() | |
| if pingSw:GetAttribute("State") then | |
| local p=0 | |
| pcall(function() p=Stats.PerformanceStats.Ping:GetValue() end) | |
| pingLabel.Text = "Ping: "..math.floor(p) | |
| else | |
| pingLabel.Text="" | |
| end | |
| end) | |
| -- ================= GRAPHICS ================= | |
| gfxSw:GetAttributeChangedSignal("State"):Connect(function() | |
| local s = gfxSw:GetAttribute("State") | |
| Lighting.GlobalShadows = not s | |
| end) | |
| -- ================= PART REDUCE ================= | |
| partSw:GetAttributeChangedSignal("State"):Connect(function() | |
| local s = partSw:GetAttribute("State") | |
| for _,v in ipairs(workspace:GetDescendants()) do | |
| if v:IsA("BasePart") then | |
| v.Material = s and Enum.Material.SmoothPlastic or Enum.Material.Plastic | |
| end | |
| end | |
| end) | |
| -- ================= HIDE UI ================= | |
| local hidden={} | |
| hideSw:GetAttributeChangedSignal("State"):Connect(function() | |
| if hideSw:GetAttribute("State") then | |
| hidden={} | |
| for _,v in ipairs(playerGui:GetChildren()) do | |
| if v:IsA("ScreenGui") and v~=gui then | |
| hidden[v]=true | |
| v.Enabled=false | |
| end | |
| end | |
| else | |
| for v in pairs(hidden) do | |
| if v then v.Enabled=true end | |
| end | |
| end | |
| end) | |
| -- ================= FLY ================= | |
| flySw:GetAttributeChangedSignal("State"):Connect(function() | |
| if flySw:GetAttribute("State") then | |
| loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Fly-V3-X-132770"))() | |
| end | |
| end) | |
| -- ================= ANTI AFK ================= | |
| local anti=false | |
| afkSw:GetAttributeChangedSignal("State"):Connect(function() | |
| anti=afkSw:GetAttribute("State") | |
| end) | |
| player.Idled:Connect(function() | |
| if anti then | |
| VirtualUser:CaptureController() | |
| VirtualUser:Button2Down(Vector2.new(),workspace.CurrentCamera.CFrame) | |
| task.wait(1) | |
| VirtualUser:Button2Up(Vector2.new(),workspace.CurrentCamera.CFrame) | |
| end | |
| end) | |
| -- MENU | |
| openBtn.MouseButton1Click:Connect(function() | |
| menu.Visible = not menu.Visible | |
| end) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment