FakeArms rotation not working

I was wondering how to make the FakeArms position correctly for my gun. I am using this tutourial from EgoMoose however this is my result.

My current code for the arm placement is

	local Weld = FakeArms[Arm.."UpperArm"][Arm.."Shoulder"]
    local CF = FakeArms[script.GunName.Value][Arm].CFrame * CFrame.Angles(math.pi/2, 0, 0)
    Weld.C1 = CF:Inverse() * Weld.Part0.CFrame * Weld.C0

As you can see it’s identical to the tutourial one, but i’m guessing since I want my gun on the left side rather than right, the math is messing up. This happened with the aiming too, but I just had to make an offset for that. For the arms, I want them to face a part on the gun called “Left” or “Right”. However, rather than rotating, they move to the position of the parts instead.

Also, should I use animations instead?