`

if magnitude <= 9 or ball.Velocity ~= Vector3.new(0, 0, 0) and magnitude <= 20 and ball.LastTouch.Value == player.Name then
			print(magnitude, "shot")
			
			ball.Velocity = Vector3.new(0, 0, 0)
			
			local mover = Instance.new("BodyVelocity")
			
			local amount = argument2
			
			print(argument2)
			
			local pos = (character.HumanoidRootPart.CFrame.lookVector.Unit + Vector3.new(0, 0.95, 0)) * 2
			
			pos = pos * argument2
			
			print(pos)
			
			ball.Velocity = pos
			
			wait(4)
			
			player.CanShoot.Value = true
			
			for i, v in pairs(character:GetChildren()) do
				if v:IsA("BasePart") or v:IsA("MeshPart") or v:IsA("Part") then
					physicsService:SetPartCollisionGroup(v, "Default")
				end
			end

https://gyazo.com/7c01280be2f3a615ca0bc4c2f85dff53

When i kick the ball, it isball is supposed to get flung in the air, but it sometimes does and sometimes it doesnt, i dont know why. I didnt post the whole script and only the necessary part since i thought it wasnt important. Help pls

Thx

3 comments

0

Why don't you change the velocity of the ball to (0, 10, 0)? that would make it go up with a bit of velocity and if you add an angle system, you can also put (angle, 10, angle2) to make it fly toward

0

it is 0.95 because i have a force that multiplies the vector in the 14th line

0

I found out the balls velocity stays at 0, 0, 0 when its set, if that helps.