so the funtion fires if i walk but if i continue walking in that direction for a while it doesnt fire unless i change directions
local human = script.Parent:WaitForChild("Humanoid") local debounce = false human.Running:Connect(function() if not debounce then debounce = true wait(script:WaitForChild("Waittime").Value) print("TEST") script:WaitForChild("Step"):Play() local value = Instance.new("StringValue", script.Parent:WaitForChild("Torso")) value.Name = "Soundvalue" game.Debris:AddItem(value, 3) debounce = false end end)
humanoid.Running only fires when the WalkSpeed of the humanoid changes. try using this instead
local human = script.Parent:WaitForChild("Humanoid") local debounce = false while humanoid.MoveDirection.Magnitude > 0 do --// Checks if the HumanoidRootPart of the character is moving using the humanoid.MoveDirection if not debounce then debounce = true wait(script:WaitForChild("Waittime").Value) print("TEST") script:WaitForChild("Step"):Play() local value = Instance.new("StringValue", script.Parent:WaitForChild("Torso")) value.Name = "Soundvalue" game.Debris:AddItem(value, 3) debounce = false end end)