Touched event doesn't work very well with tweens?

So I am making a game for my friends where you throw eggs at each other and I’m working on making that but I’ve run into an issue: I put a dummy in to test if the egg can actually do the damage it needs to but I think since I have the egg in a tween going from the hand to where you clicked, it doesn’t actually detect it hitting the dummy. I have tried using BodyVelocity but it doesn’t do what I need it to.

Here is the code inside the egg:

local MinDamage = script.Parent.MinDamage.Value
local MaxDamage = script.Parent.MaxDamage.Value

script.Parent.Touched:Connect(function(hit)
	if hit.Parent.Name ~= script.Parent.Thrower.Value then
		if hit.Parent:FindFirstChild("Humanoid") then
			print("Hit is not the thrower")
			print(hit.Parent)
			local Damage = math.random(MinDamage, MaxDamage)
			hit.Parent.Humanoid.Health = hit.Parent.Humanoid.Health - Damage
			script.Parent:Destroy()
		end
	else
		print("Thrower touched")
	end
end)

And here is the actual throw server script:

local TweenService = game:GetService("TweenService")

local function CreateInfo(Duration)
	local tweenInfo = TweenInfo.new(
		Duration,
		Enum.EasingStyle.Linear,
		Enum.EasingDirection.Out,
		0,
		false,
		0
	)
	return tweenInfo
end

local function onThrow(player, EndPos, StartPos)	
	local Ball = game.ReplicatedStorage.Egg:Clone()
	Ball.CFrame = StartPos
	Ball.Parent = workspace
	Ball.Thrower.Value = player.Name
	local tweenInfo = CreateInfo((EndPos.p - StartPos.p).Magnitude / 100)
	local tween = TweenService:Create(Ball, tweenInfo, {CFrame = EndPos})
	tween:Play()
end

game.ReplicatedStorage.Remotes.ThrowBall.OnServerEvent:Connect(onThrow)

If anyone can give suggestions on what I can do it would be much appreciated. If I wasn’t clear on what I was trying to accomplish, I’m just trying to make it so when you click you throw and egg at that position but it doesn’t fire the touched event and I think its because I’m using tweening.

I am a bit confused about how your egg moves in the tween. Is it moving a small distance before you set up another tween for it to continue moving the next small distance?

Also, would the shape of your trajectory be a straight line or a parabola?

If it is a straight line, you can simply fire a ray before you throw the egg to detect a hit. If a hit is detected, set the player as the end point position and tween accordingly. If not, I’m not sure how your egg is going to disappear. You could make it fly away to infinity.

As for a parabola, grab all the points of the parabola and fire a ray to the next upcoming point that the egg is going to go from the previous point on the parabola. If you detect a hit, call tween:Stop(). Otherwise, continue on tweeting to the next point on the parabola.

The egg tween just makes it move from your hand to the spot you clicked but for some reason when it hits the dummy, the touched function doesn’t fire and so it doesn’t deal damage and I want it to deal damage.

Are you good or do you still need help, considering the last post was months ago