Tool Help: New Part Direction

I want to make a tool that creates a part that moves in the direction the person using the tool is facing.

The problem is, I don’t know how to script how the part moves(in this case, the direction).

I tried using the CFrame + a Vector3, but The direction is constant regardless of the orientation of HumanoidRootPart.
I also tried to use a Body Mover, but that doesn’t work because the part could go off course. I am trying to make the part Anchored, which pushes people around.
The part is in ServerStorage, and I clone it.
Could anyone help? thanks!

Example code here

local part = game.ServerStorage.Part
part.Parent = Workspace
part.CFrame = tool.Parent.Parent.Character.PrimaryPart
--How to set the orientation?

if im understanding this correctly try:

local offset = Vector3.new(0,0,-5); --relative to the humanoid root part
local part = game.ServerStorage.Part
part.Parent = Workspace
part.CFrame = tool.Parent.Parent.Character.PrimaryPart.CFrame*CFrame.new(offset.X,offset.Y,offset.Z);

This should work with setting the orientation, but also do I move the part in its own direction while keeping it anchored? Or would a body mover work instead?

well technically theres no real right or wrong answers as long as it works and has a decent runtime then its all good