Help with polishing my lock on system

I’ve managed to create a lock - on system that works to my specifications of locking on to an enemy that is closest to the center of the screen, But I’m noticing quite a few problems that I don’t know where or what to work out.

  1. when I stop locking on to the enemy my camera resets to the angle that it was when it started locking often times this is facing the opposite direction of the enemy. I tried to fix it by having the loop finish set the rotation one more time but it obviously didn’t work correctly.I would like when the lock ends for the character to continue facing the same angle.

  2. When locked on to an enemy the camera never really centers itself to the enemies capsule. All i know is that I am sending the enemies get actor location to the find look rotation, I would really like to be able to make it more accurate so that it will always lock onto the center of the enemy.

  3. This is part of 2 I suppose, but; when I move around an enemy while locked on (my code forces the camera to always look at the enemy to achieve a circle strafe effect like darksouls) my character does not move in a perfect circle, he always kind of moves backwards, more like a spiral. Also when the character does move forward or backward, the focus point of his vision moves down and up so if I were to back away from the enemy far enough I wouldn’t even see it on screen anymore.

Let me know If i need to provide more code / explain anything.