void Update()
        {
            // Get pressed world position
            bool mouseDown = Input.GetMouseButtonDown(0);
            bool touchUp   = Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Ended;

            if (mouseDown || touchUp)
            {
                Ray   ray      = Camera.main.ScreenPointToRay(mouseDown ? Input.mousePosition : new Vector3(Input.GetTouch(0).position.x, Input.GetTouch(0).position.y));
                Plane hPlane   = new Plane(Vector3.forward, Vector3.zero);
                float distance = 0;
                if (hPlane.Raycast(ray, out distance))
                {
                    // get the hit point:
                    Vector2 vHitPoint = ray.GetPoint(distance);
                    if (AutoTileMap.Instance.GetAutotileCollisionAtPosition(vHitPoint) == eTileCollisionType.PASSABLE)
                    {
                        m_pathFindingBehaviour.enabled   = true;
                        m_pathFindingBehaviour.TargetPos = ray.GetPoint(distance);
                        m_pathFindingBehaviour.ClearPath();
                        m_moving.Veloc = Vector3.zero;
                    }
                }
            }
        }