How can I make a compass gui?(Closed)

How can I make a sort of compass gui which the gui moves to the position of the object.
Here’s a game which uses this:

So in summary I want a gui to always point toward to an object so how can I do this?
Thank you in advance

Anyone still have ideas???

Measure the angle between the camera’s position and the position of whatever you want to track either with vector math or trigonometry. Convert the angle to 0-360 if necessary and then just plug that into the .Rotation property of any UI instance

Can you further explain please. Here’s what I have now:

local RunService = game:GetService("RunService")
local Player = game:GetService("Players").LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart")

local PlayerArrow = script.Parent:WaitForChild("PlayerArrow")

RunService.RenderStepped:Connect(function()
   PlayerArrow.Rotation = Vector3.new(HumanoidRootPart.Position.x,HumanoidRootPart.Position.y,HumanoidRootPart.Position.z) PlayerArrow.Rotation = -HumanoidRootPart.Orientation.y -90
end)

Heya!

Is PlayerArrow a GUI object? If so, just try this!

PlayerArrow.Rotation =HumanoidRootPart.Orientation.Y

If not, try this: PlayerArrow.Rotation = Vector3.new(0, -HumanoidRootPart.Orientation.Y, 0)

The thing it I want it to move to an object if you play this game you can see the “!” moves as the gui goes.

I’m sorry for being I guess inpatient, but is there any ideas still? I honestly have no clue and I’m in dire need of help.