I have this script where if you escape from a vampire that has grabbed you, the vampire has platform stand enabled for a short time to mimic stun. The problem is, it doesn't like working. Sometimes it'll work here and there, like if the player is in the air or not moving, but most of the time, it just doesn't stun the player. Is there a way to fix this?

progress.Changed:Connect(function()
			if progress.Value >= 100 and grabbed.Value == true then
				anim:Play()
				vampchar:WaitForChild("Humanoid").PlatformStand = true --heres where the stun starts
				local ff = Instance.new("ForceField")
				ff.Name = "FF"
				ff.Parent = v2
				spawn(function()
					wait(1)
					ff:Destroy()
				end)
				beast.Value = false
				progress.Value = 0
				grabbing.Value = false
				--grabbingwho.Value = ""
				grabbed.Value = false
				grabbedby.Value = ""
				vampchar.Head.face.Transparency = 0
				vampchar.Head.Decal2.Transparency = 1
				vampchar.Head.Red.Transparency = 1
				vampchar.Torso.Transparency = 0
				vampchar.Head.Transparency = 0
				vampchar["Left Arm"].Transparency = 0
				vampchar["Left Leg"].Transparency = 0
				vampchar["Right Arm"].Transparency = 0
				vampchar["Right Leg"].Transparency = 0
				
			end
			spawn(function()
				wait(2)
				vampchar:WaitForChild("Humanoid").PlatformStand = false -- and heres where it ends
			end)
		end)