Need help with context action service

I need some help with context action service, when player begin press the key it make player do a animation, then the animation reach a keyframe event and stop. When the player end pressing key the animation continue playing, this don’t have issue when you do in slow, but the you do fast, this happens.

Video Script:


local Animation = Instance.new("Animation")
Animation.AnimationId = "rbxassetid://17256014233"
local AnimationTrack = Humanoid:LoadAnimation(Animation)
 		

local function F_Skill(Name,State,Input)	
	if State == Enum.UserInputState.Begin then
		
			Char:SetAttribute("F_Skill_Orientation",1)
		
		Pressing = true
		
		AnimationTrack:Play(.1,5,1)
		AnimationTrack:GetMarkerReachedSignal("EventAnimation"):Connect(function()
			AnimationTrack:AdjustSpeed(0)
		end)

	
	elseif State == Enum.UserInputState.End and Char:GetAttribute("F_Skill_Orientation") then
		
		AnimationTrack:AdjustSpeed(1)
			
			Pressing = false
		
		task.wait(1)
		
		Char:SetAttribute("F_Skill_Orientation",nil)
			
		end
	end

You need to set some value that is shared between calls to F_Skill, which prevents a new call before the previous one is done.