Example #1
0
    private void MouseManager_DeselectionEvent(object sender, ClickArgs e)
    {
        if (selectedObject == null)
        {
            return;
        }

        if (SelectionSquare != null)
        {
            SelectionSquare.SetActive(false);
        }

        selectedObject = null;
        var deselectedObject = e.clickedObject;

        //we could delegate or do the event handling in the object itself, let's keep it here for now
        //deselectedObject.transform.DOBlendableLocalMoveBy(Vector3.down * 2, 0.5f);//TODO: This might force the object to certain X Y Z, if it's already moving from another source this could interfere

        var refs = deselectedObject.GetComponent <GetOutlineReferences>();

        if (refs != null)
        {
            var outlines = refs.OutlineReferences;
            foreach (var outline in outlines)
            {
                outline.color   = 0;
                outline.enabled = false;
            }
        }
    }
Example #2
0
 private void lm(ClickArgs e)
 {
     if (ListMenuCilcked != null)
     {
         ListMenuCilcked(this, e);
     }
 }
Example #3
0
    private void MouseManager_ClickEvent(object sender, ClickArgs e)
    {
        var clickedObject = e.clickedObject;

        //if you clicked an object that is not selected already
        if (selectedObject != clickedObject)
        {
            //clear previous selection
            if (DeselectionEvent != null && selectedObject != null)
            {
                DeselectionEvent.Invoke(this, new ClickArgs(selectedObject));
            }
            //select the object
            if (SelectionEvent != null && clickedObject != null)
            {
                SelectionEvent.Invoke(this, new ClickArgs(clickedObject));
            }
        }
        else
        {
            //if you clicked the selected object
            //deselect the object
            if (DeselectionEvent != null)
            {
                DeselectionEvent.Invoke(this, new ClickArgs(clickedObject));
            }
        }
    }
Example #4
0
 private void ir(ClickArgs e)
 {
     if (ItemRightCilcked != null)
     {
         ItemRightCilcked(this, e);
     }
 }
Example #5
0
    private void MouseManager_SelectionEventHandler(object sender, ClickArgs e)
    {
        selectedObject = e.clickedObject;

        Vector3 selectionCenter;

        if (SelectionSquare != null)
        {
            SelectionSquare.SetActive(true);
            selectionCenter = e.clickedObject.transform.position;
            var renderers = selectedObject.GetComponentsInChildren <Renderer>();
            if (renderers != null)
            {
                Bounds totalBounds = new Bounds();
                foreach (var renderer in renderers)
                {
                    if (totalBounds.extents == Vector3.zero)
                    {
                        totalBounds = renderer.bounds;
                    }
                    else
                    {
                        totalBounds.Encapsulate(renderer.bounds);
                    }
                }
                var x = totalBounds.size;
                x.y = 1;
                SelectionSquare.transform.localScale = x;
                var boundsCenter = totalBounds.center;
                boundsCenter.y  = 0;
                selectionCenter = boundsCenter;
            }
            SelectionSquare.transform.position = selectionCenter;
        }
        //we could delegate or do the event handling in the object itself, let's keep it here for now
        //e.clickedObject.transform.DOBlendableLocalMoveBy(Vector3.up * 2, 0.5f);//TODO: This might force the object to certain X Y Z, if it's already moving from another source this could interfere

        var refs = e.clickedObject.GetComponent <GetOutlineReferences>();

        if (refs != null)
        {
            var outlines = refs.OutlineReferences;
            foreach (var outline in outlines)
            {
                outline.color   = 1;
                outline.enabled = true;
            }
        }
    }