RichAI should handle in-place rotation since it already handles rotation while moving.
I added this as follows:
var rotationSpeedFactor = targetIsEndPoint ? Mathf.Clamp01(1.1f * slowdownFactor - 0.1f) : 1f;
if (deltaPosition != Vector2.zero)
{
RotateTowards(deltaPosition, rotationSpeed * rotationSpeedFactor * deltaTime);
}
else
{
Quaternion targetRotation = target.rotation;
if (rotationIn2D)
targetRotation *= Quaternion.Euler(90, 0, 0);
tr.rotation = Quaternion.RotateTowards(tr.rotation, targetRotation, rotationSpeed * deltaTime);
}