private void OnSceneGUI()
    {
        EnemySenses fov = (EnemySenses)target;

        #region Draw field of view
        Vector3 viewAngleA = fov.DirFromAngle(-fov.viewAngle / 2, false);
        Vector3 viewAngleB = fov.DirFromAngle(fov.viewAngle / 2, false);

        //Draw Circle
        Handles.color = Color.white;
        Handles.DrawWireArc(fov.transform.position, Vector3.up, viewAngleA, fov.viewAngle, fov.viewRadius);

        //Draw Lines
        Handles.DrawLine(fov.transform.position, fov.transform.position + viewAngleA * fov.viewRadius);
        Handles.DrawLine(fov.transform.position, fov.transform.position + viewAngleB * fov.viewRadius);
        #endregion

        #region Draw turn angle if needed
        if (fov.HasTurnBehavior())
        {
            Handles.color = Color.green;

            //Draw borders of turning
            Vector3 turnAngleA, turnAngleB;
            if (!Application.isPlaying)
            {
                //Used in Editor
                turnAngleA = fov.transform.forward;
                turnAngleB = fov.DirFromAngle(fov.turnAngle, false);
            }
            else
            {
                turnAngleA = fov.leftTurnBorder;
                turnAngleB = fov.rightTurnBorder;
            }

            Handles.DrawLine(fov.transform.position, fov.transform.position + turnAngleA * fov.viewRadius / 2);
            Handles.DrawLine(fov.transform.position, fov.transform.position + turnAngleB * fov.viewRadius / 2);

            //Draw circle
            Handles.DrawWireArc(fov.transform.position, Vector3.up, turnAngleA, fov.turnAngle, fov.viewRadius / 2);

            //Draw Guards forward direction
            Handles.color = Color.red;
            Handles.DrawLine(fov.transform.position, fov.transform.position + fov.transform.forward * fov.viewRadius / 2);
        }
        #endregion
    }