Beispiel #1
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetMouseButton(0))
        {
            //leftClickPos = GetMousePosition();
            RaycastHit2D hit = Physics2D.Raycast(GetMousePosition(), camGirl.transform.forward, 100);
            if (hit)
            {
                GameObject obj = hit.transform.gameObject;
                if (!selectedObjects.Contains(obj) && obj.tag == "Unit")
                {
                    selectedObjects.Add(obj);
                }
            }
        }

        //if (Input.GetMouseButtonUp(0))
        //{
        //    //Collider2D[] colliderArray = Physics2D.OverlapAreaAll(leftClickPos, GetMousePosition());
        //    foreach (Collider2D collide in colliderArray)
        //    {
        //        Debug.Log(collide);
        //        selectedObjects.Add(collide.gameObject);
        //       // collide.gameObject.transform.Translate(1, 1, 1);
        //    }
        //}
        if (Input.GetMouseButtonUp(1))
        {
            foreach (GameObject obj in selectedObjects)
            {
                // NavMeshAgent agent = obj.GetComponent(typeof(NavMeshAgent)) as NavMeshAgent;

                //agent.Warp(obj.transform.position);
                //agent.SetDestination(GetMousePosition());
                UnitMovement uM = obj.GetComponent(typeof(UnitMovement)) as UnitMovement;
                uM.SetMovePosition(GetMousePosition());
            }
            selectedObjects.Clear();
        }
    }