Quaternion.Lerp messing up after being deactived and then activated again

Hey everybody!

I have a gun script that automatically makes the gun face the camera. Everything runs fine, but when i reactivate again (after hours of narrowing down the problem), the lerp function goes haywire and makes the gun start rolling on the x axis when the player starts moving.

//get our position
transform.position = Vector3.Lerp(transform.position, GameObject.FindGameObjectWithTag(tagOfWeaponLocation).transform.position, 0.99f);
//get our rotation if we're not firing the weapon
if(GetComponent<WeaponFire>().beingFired == false)
{

transform.rotation = Quaternion.Lerp(transform.rotation, GameObject.FindGameObjectWithTag(tagOfCamera).camera.transform.rotation, 0.433f);
Debug.Log(Quaternion.Lerp(transform.rotation, GameObject.FindGameObjectWithTag(tagOfCamera).camera.transform.rotation, 0.433f));
}

Thanks for any insight/help,
Nikita

Doesn’t matter. Solved by making the gun a child of a different object.