private void Update()
    {
        Vector3 currentPosition = UtilsClass.GetMouseWorldPosition();

        //LMB
        if (Input.GetMouseButtonDown(0))
        {
            //Left mouse Button press
            startPosition = UtilsClass.GetMouseWorldPosition();
            mousedown     = true;
        }
        if (Input.GetMouseButtonUp(0))
        {
            //left Mouse Button Released
            mousedown = false;
            //make selection box disappear
            SelectionBox.SetActive(false);
            Collider2D[] collider2DArray = Physics2D.OverlapAreaAll(startPosition, currentPosition);
            foreach (RTSUnit RTSunit in selectedRTSUnitList)
            {
                RTSunit.SetSelectedVisible(false);
            }
            selectedRTSUnitList.Clear();


            foreach (Collider2D collider2D in collider2DArray)
            {
                RTSUnit RTSunit = collider2D.GetComponent <RTSUnit>();
                if (RTSunit != null)
                {
                    RTSunit.SetSelectedVisible(true);
                    selectedRTSUnitList.Add(RTSunit);
                }
            }
            Debug.Log(selectedRTSUnitList.Count);
        }
        //if lmb held down
        if (mousedown && startPosition != currentPosition)
        {
            DrawSelectionBox(startPosition, currentPosition);
        }

        //RMB
        if (Input.GetMouseButtonDown(1))
        {
            //right Mouse Button press
            nextPositionLeft = UtilsClass.GetMouseWorldPosition();
        }
        if (Input.GetMouseButtonUp(1))
        {
            //right Mouse Button Released
            nextPositionRight = UtilsClass.GetMouseWorldPosition();
            if (selectedRTSUnitList.Count == 1)
            {
                selectedRTSUnitList[0].PathTo(nextPositionLeft);
            }
            if (selectedRTSUnitList.Count > 1)
            {
            }
        }
    }