-- Services local Players = game:GetService("Players") local ContextActionService = game:GetService("ContextActionService") local workspace = game:GetService("Workspace") local LocalPlayer = Players.LocalPlayer -- Find dash table in memory local Dash for i,v in pairs(getgc(true)) do if type(v) == "table" and rawget(v, "CharacterDashAsync") then Dash = v break end end if not Dash then warn("Dash table not found!") return end -- Track character local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait() local Humanoid = Character:WaitForChild("Humanoid") -- Function to get dash direction based on camera local function getDashDirection() local cam = workspace.CurrentCamera local moveDir = Humanoid.MoveDirection local frontDot = math.round(moveDir:Dot(cam.CFrame.LookVector)) local rightDot = math.round(moveDir:Dot(cam.CFrame.RightVector)) if frontDot == 0 then return rightDot > 0 and "Right" or (rightDot < 0 and "Left" or "Front") else return frontDot > 0 and "Front" or "Back" end end -- Dash with no cooldown local function DashNoCooldown() if Character.Parent and Humanoid.Health > 0 then Dash.CharacterDashAsync(Character, getDashDirection()) end end -- Bind Q key ContextActionService:BindAction("Dash", function(_, inputState) if inputState == Enum.UserInputState.Begin then DashNoCooldown() end end, true, Enum.KeyCode.Q) -- Update character on respawn LocalPlayer.CharacterAdded:Connect(function(char) Character = char Humanoid = Character:WaitForChild("Humanoid") end)