Ejemplo n.º 1
0
 void OnFrameSelectionUpdate(FrameSelecting selecting)
 {
     Assert.AreEqual(_frameSelecting, selecting);
     SelectionFrame.gameObject.SetActive(true);
     SelectionFrame.anchoredPosition = selecting.Min;
     SelectionFrame.sizeDelta        = selecting.Max - selecting.Min;
 }
Ejemplo n.º 2
0
 void OnFrameSelectionEnd(FrameSelecting selecting)
 {
     Assert.AreEqual(_frameSelecting, selecting);
     SetSelection(FindSelectables(selecting));
     SelectionFrame.gameObject.SetActive(false);
     _frameSelecting = null;
 }
Ejemplo n.º 3
0
        IEnumerable <Selectable> FindSelectables(FrameSelecting selecting)
        {
            var p1   = WorldRaycaster.RaycastGround(selecting.Min);
            var p2   = WorldRaycaster.RaycastGround(selecting.Max);
            var size = p2 - p1;

            size.y = 10;
            var b = new Bounds((p1 + p2) / 2, size);

            return(WorldRaycaster.OverlapBox <Selectable>(b));
        }
Ejemplo n.º 4
0
 public IFrameSelecting BeginFrameSelection(Vector2 startPoint)
 {
     if (_frameSelecting != null)
     {
         _frameSelecting.OnUpdate -= OnFrameSelectionUpdate;
         _frameSelecting.OnEnd    -= OnFrameSelectionEnd;
         _frameSelecting.End();
     }
     _frameSelecting           = new FrameSelecting(startPoint);
     _frameSelecting.OnUpdate += OnFrameSelectionUpdate;
     _frameSelecting.OnEnd    += OnFrameSelectionEnd;
     return(_frameSelecting);
 }