Help with CFrame angles / orientation

I’m trying to allow the player to create a part in the workspace. The part needs to look like this:

This is my code so far, for the CFrame of the part created.

part1.CFrame = player.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -25) * CFrame.Angles(90,0,0)

No matter what values I try in the CFrame.Angles(x,y,z), the part ends up being rotated the completely wrong way. So what values should I be using for the part to appear infront of the player, rotated correctly?

It should look something like this:

The CFrame of the player includes the rotation of the player. If you want the rotation to be the same relative to the world, try using the postion property instead of CFrame, or set the rotation of the part after the CFrame to the correct value

but surely setting the rotation won’t work, as the part’s rotation needs to be relative to the player’s, meaning I need to use CFrame?

I wasn’t sure whether you meant to have it relative to the player or not.

In which way is the rotation incorrect?

Sorry, didn’t see your message. But it should look like this, if the player was the dummy on the right:
image

I managed to fix it, by adding in this line, after setting the CFrame:

part1.Orientation = player.Character.HumanoidRootPart.Orientation + Vector3.new(-90,-90,-90)