How to place part on player head?

Hello, I have a part and I would like to know how to place it over the player’s head, any ideas?
My idea is that this part points to a specific part

I would really appreciate a hand :pray:

1 Like

Do you want a moving part to follow behind the character, like a pet? If so position for position and body gyro for rotation(looks nicer kinda looks like a tween but automatic).

If you want it constantly to the player with zero delays like if it’s a backpack or tool, you can weld it and you can change the offset by using the weld C0
Weld.C0 = CFrame.new(0,3,0) – 3 stud offset on Y axis.

Weld.C0 = CFrame.new(0,3,0) * CFrame.fromEulerAnglesXYZ(0,math.rad(90),0)
– 3 stud on Y axis offset with 90 degree rotation on Y axis. Since CFrame.fromEulerAnglesXYZ uses radians you use math.rad to convert degrees to radians.

Weld Documentation

Body Position Document
Body Gyro Documentation

1 Like

Sorry for the 100th edit lol, also you should disable the CanCollide of the Pet. LocalScript in StarterPlayerScripts:

local Pet = workspace.Follower -- Put the Part which will follow you.
wait(5)
local Root = game.Players.LocalPlayer.Character.HumanoidRootPart
local RunService = game:GetService("RunService")

local SpecificPart = workspace.Target -- Put the Part that your Pet will point.

RunService.RenderStepped:Connect(function()
	Pet.CFrame = Root.CFrame * CFrame.new(0, 2.5, 0)
	Pet.CFrame = CFrame.lookAt(Pet.Position, SpecificPart.Position)
end)

Oh sorry guys I think I misunderstood myself, what I mean is ‘how can I do something like this?’ (see image below)

image

In shorts, I need to make one part over the player’s head and the front part to be like the direction arrow to the target path

This is exactly what you want.

local Pet = workspace.Follower -- Put the Part which will follow you.
wait(5)
local Root = game.Players.LocalPlayer.Character.HumanoidRootPart
local RunService = game:GetService("RunService")

local SpecificPart = workspace.Target -- Put the Part that your Pet will point.

RunService.RenderStepped:Connect(function()
	Pet.CFrame = Root.CFrame * CFrame.new(0, 2.5, 0)
	Pet.CFrame = CFrame.lookAt(Pet.Position, SpecificPart.Position)
end)
1 Like