Hello, I'm trying to make a hammer that when .Activated, will charge and will only strike when .Deactivated. I think I'm going to need debounces but I don't really know how to execute it. Please help, thanks much!

local tool = script.Parent

local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")

local charge = script.Charge
local smash = script.Smash

local chargeTrack = humanoid:LoadAnimation(charge)
local smashTrack = humanoid:LoadAnimation(smash)

tool.Activated:Connect(function()
	smashTrack:Stop()
	chargeTrack:Play()
	wait(chargeTrack.Length)
	chargeTrack:AdjustSpeed(0)
end)

tool.Deactivated:Connect(function()
	chargeTrack:Stop()
	smashTrack:Play()
end)