Animation breaks down as it repeats

function RemoveAnims()
	if CurrentArms ~= nil then
		if CurrentArms:FindFirstChild("AnimTrackFolder") then
			for _,Anim in pairs(CurrentArms.AnimTrackFolder:GetChildren()) do
				Anim:Destroy()
			end
			wait()
		end
	end
end

local ReloadDebounce = false
UserInputService.InputBegan:Connect(function(input,gameprocessing)
	if not gameprocessing then
		if input.KeyCode == Enum.KeyCode.R and GunSettings.Configs.Ammo < GunSettings.Configs.MaxAmmo then	
			if ReloadDebounce == false then
				ReloadDebounce = true
				RemoveAnims()
				local ReloadAnimation_Arms = Instance.new("Animation",CurrentArms.AnimTrackFolder)
				ReloadAnimation_Arms.AnimationId = GunSettings.ArmsAnimations.ReloadAnimation
				local ReloadAnimationTrack_Arms = CurrentArms.AnimationController:LoadAnimation(ReloadAnimation_Arms)
				ReloadAnimationTrack_Arms:Play()
				repeat
					--Ammo Increasing
				until GunSettings.Configs.Ammo == GunSettings.Configs.MaxAmmo or Shot == true or GunSettings.Configs.Equipped == false
				wait(1.5)
				ReloadAnimationTrack_Arms:Stop()
				ReloadDebounce = false
			end
		end
	end
end)

Correct Animation: https://i.gyazo.com/354e65002dc15de620311453d0b33cd6.mp4

When i tried again: https://i.gyazo.com/187c4095ee9482f0a7cb9e4c0fd4161c.mp4