protected virtual void RotateWithCamera(Transform cameraTransform)
 {
     if (rotateToCameraWhileStrafe && cc.isStrafing && !cc.actions && !cc.lockMovement)
     {
         // smooth align character with aim position
         if (tpCamera != null && tpCamera.lockTarget)
         {
             cc.RotateToTarget(tpCamera.lockTarget);
         }
         // rotate the camera around the character and align with when the char move
         else if (cc.input != Vector2.zero)
         {
             cc.RotateWithAnotherTransform(cameraTransform);
         }
     }
 }