local character = script.Parent local debounce = true local startjump character:WaitForChild("Humanoid").FallingDown:Connect(function(bool) startjump = character.HumanoidRootPart.Position local touch = character.Humanoid.Touched:Connect(function(part, humanPart) if part.Parent == character or part.Name == "Handle" then return end if not debounce then return end debounce = false local magnitude = (startjump - character.HumanoidRootPart.Position).magnitude if magnitude > 20 then character.Humanoid:TakeDamage(magnitude * 1.5) end startjump = character.HumanoidRootPart.Position wait(0.2) debounce = true end) if not bool then touch:Disconnect() end end)
I am really stumped on why the touch event isn't disconnecting.