I set up a normal Debounce that should make it wait 1 second each time it is run, and I have another form of a debounce within the 'if work == false then' function, but it doesn't work.
Rather than a timer it is supposed to be able to be run once, then when it's run the return function retrieves it as true so the function can no longer be activated and it goes to the end.
Obviously this isn't happening. The rest of the script is a simple(albeit laggy and crude) dash left.
tap = false Debounce = false locplay = game.Players.LocalPlayer human = locplay.Character.Humanoid game:GetService("UserInputService").InputBegan:connect(function(input1) if input1.KeyCode == Enum.KeyCode.A then if Debounce == false then wait(1) Debounce = true local work = false if work == false then if tap then print("blah") local anim = Instance.new("Animation",human) anim.AnimationId = "https://www.roblox.com/DashLEFT-item?id=454485046" local animtrack = human:LoadAnimation(anim) animtrack:Play() for i = 0,-2.5,-.5 do wait(.25) local Left = human.Parent.Torso.CFrame * CFrame.new(i,0,0) human.Parent.Torso.CFrame = Left end animtrack:Stop() return end tap = true work = true wait(.2) tap = false end end end Debounce = false end)
Thanks.