Calculating a lookVector to make a gun face the mouse

Hey everyone, I am having some trouble calculating some stuff.

Right now, I am rotating the torso of the character to face the mouse with cframe.lookat(). The problem is that its a bit weird how the torso faces the mouse but the gun faces a bit off, so the bullets don’t go in the exact same direction the gun is pointing.

Would there be any way of calculating a lookVector so I can make the gun face the mouse while only rotating the waist(torso)?. So the bullets actually face the same way as the gun.

Thanks for reading.