ok, this is an animation imported from blender, this is what the animation is MEANT to do:
https://i.gyazo.com/5be7ff213a4a6055583dbec4c078ec6a.mp4
this is what happens:
https://i.gyazo.com/cb6e72024b43e9aa9d40caed1afc702f.mp4
this is the script that loads the anim and plays it:
script.Parent.Activated:Connect(function()
Swing = script.Parent.Parent.Humanoid:WaitForChild("Animator"):LoadAnimation(script.Parent.Handle.Swing)
script.Parent.Parent.Humanoid.Walkspeed = 0
-- sets walkspeed to 0 to allow the anim to play without disturbance
Swing:Play()
wait(2.3)
script.Parent.Parent.Humanoid.WalkSpeed = 16
-- sets walkspeed back after anim duration
end)
script.Parent.Unequipped:Connect(function()
Swing:Stop()
script.Parent.Parent.Humanoid.WalkSpeed = 16
-- if the player decides to unequip the tool for whatever reason, speed is restored and anim is stopped
end)
the script is a server script, placed under the tool
if you need more info please request it in the replies