~~~~~~~~~~~~~~~~~
local playa=game.Players.LocalPlayer;
script.Parent.Selected:connect(function(mouse) while Wait() do local weld=playa.Character.Torso["Left Shoulder"]; --[[ p0=part0.CFrame c0=c0 p1=part1.CFrame c1=c1
p1*c1 == p0*c0 c1 == p1:inverse()*p0*c0 c0 == p0:inverse()*p1*c1 --]] local desired_p1=CFrame.new(--the CFrame that we want the arm to be at (weld.Part0.CFrame*CFrame.new(-1,1,0)).p,--the position we want mouse.hit.p--look at the mouse )* CFrame.Angles(math.pi/2,0,0);--rotate it so that the hand points that way weld.C0=CFrame.new();--set C0 to identity matrix so it is out of the equation weld.C1=desired_p1:inverse()*weld.Part0.CFrame;--same equation as shown above
end end
)
~~~~~~~~~~~~~~~~~