Ejemplo n.º 1
0
 //------------------------------------------------------
 public void OnDrag(PointerEventData eventData)
 {
     if (DragScorll != null)
     {
         DragScorll.OnDrag(eventData);
     }
 }
Ejemplo n.º 2
0
 public void OnDrag(PointerEventData eventData)
 {
     if (moveSelf == false)
     {
         scrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 3
0
    public void OnDrag(PointerEventData eventData)
    {
        if (_isScrolling)
        {
            scrollRect.OnDrag(eventData);
        }
        else
        {
            if (gameManager.target == null)
            {
                int c = int.Parse(gameObject.GetComponentInChildren <Text>().text);
                if (c <= 0)
                {
                    return;
                }

                CanvasGroup canvasGroup = gameObject.GetComponentInParent <CanvasGroup>();
                canvasGroup.alpha = 0f;

                gameManager.CloneItem(gameObject);

                gameManager.target.transform.localScale = new Vector3(0.25f, 0.25f, 0.25f);
                gameManager.target.transform.rotation   = new Quaternion(0, 0, 0, 0);
                gameManager.target.GetComponent <SpriteRenderer>().sortingOrder = 20;
                gameManager.target.GetComponent <Rigidbody2D>().gravityScale    = 0;
                gameManager.target.GetComponent <PolygonCollider2D>().isTrigger = true;
            }
        }


        //Debug.LogError(eventData.IsScrolling());
    }
Ejemplo n.º 4
0
    public void OnDrag(PointerEventData eventData)
    {
        if (!isDraggable /*&& !movedAway && Time.time - startDragTime <= dragDelay*/ &&
            Vector2.Distance(clickPosition, eventData.position) > dragDelta)
        {
            movedAway = true;
        }

        if (!isDraggable)
        {
            scrollRect.OnDrag(eventData);
        }
        else
        {
            puzzleImage.transform.position = eventData.position - offsetToCenter;
            Vector3 pos = new Vector3(eventData.position.x, eventData.position.y, 1);

            puzzleImage.transform.position = Camera.main.ScreenToWorldPoint(pos);

            SetPuzzlePosOnGridImage(rtPuzzleImage.anchoredPosition, gridImage, gridImage.GetComponent <PuzzleShadow>().shadowPositions);

            if (isFramed)
            {
                imageManager.FrameOn();
                isFramed = false;
            }
        }
    }
Ejemplo n.º 5
0
 public void OnDrag(PointerEventData eventData)
 {
     if (scrollRect != null)
     {
         scrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 6
0
    public void OnDrag(PointerEventData e)
    {
        ItemPos.x = offsetPos.x + e.position.x;
        moveX     = e.position.x - DragSatrtX;
        if (moveX < itemDelValue && moveX != 0)       // Item幅の85%以上のDragがあったら即削除 (ミスで消えないよう少し多め)
        {
            delTfm.position = new Vector2(ItemPosInitX, delTfm.position.y);
        }
        else if (moveX < dragJudgeValue || dragStat == 2)     // Drag開始判定移動量、またはDrag中(Drag中にDrag開始判定移動量より減少することがある)
        {
            dragStat                = 2;
            scrRct.vertical         = false;                                                         // scrollRsctの停止
            ItemPos.x               = Mathf.Clamp(ItemPos.x, ItemPosInitX - delWidth, ItemPosInitX); // 最小:DELETE表示 最大:初期位置
            ItemPos.y               = Mathf.Clamp(ItemPos.y, this.transform.position.y, this.transform.position.y);
            this.transform.position = ItemPos;

            // delete,nodifyImageを左から引き出す
            modTfm.position = new Vector2(ItemPos.x + ItemWidth, modTfm.position.y);
            delTfm.position = new Vector2(ItemRightEndPosX + ItemWidth / 2 - (ItemPosInitX - ItemPos.x) / 2, delTfm.position.y);
        }
        else
        {
            transform.DoParentEventSystemHandler <IDragHandler>((parent) => { scrRct.OnDrag(e); });
        }
    }
 //IDragHandler
 public void OnDrag(PointerEventData eventData)
 {
     if (isScrollOther)
     {
         ParentScrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 8
0
 public void CreateFlagNode()
 {
     for (int flagidx = 0; flagidx < FlagCnt; ++flagidx)
     {
         if (flagidx >= flaglist.Count)
         {
             GameObject flagnodego = GameObject.Instantiate(flagnode.gameObject, flaglist_obj);
             int        flagid     = FlagStartId + flagidx;
             flagnodego.name = string.Format("flagnode_{0}", flagid);
             flagnodego.GetComponent <Image>().sprite = ResourceMgr.Instance.LoadSprite(flagid);
             flaglist.Add(flagnodego);
             EventListener.Get(flagnodego).OnClick = e =>
             {
                 ZEventSystem.Dispatch(EventConst.OnSelectFlag, flagid);
                 UIFace.GetSingleton().Close(UIID.FlagSelect);
             };
             EventListener.Get(flagnodego).BegineDragEvent = e =>
             {
                 flagscroll_obj.OnBeginDrag(e);
             };
             EventListener.Get(flagnodego).DragEvent = e =>
             {
                 flagscroll_obj.OnDrag(e);
             };
             EventListener.Get(flagnodego).EndDragEvent = e =>
             {
                 flagscroll_obj.OnEndDrag(e);
             };
         }
     }
     flaglist_obj.sizeDelta = new Vector2(FlagCnt * flagnode.sizeDelta.x, flaglist_obj.sizeDelta.y);
 }
    /// <summary>
    /// QUANDO UM DRAG EFETIVAMENTE ESTA ACONTECENDO
    /// </summary>
    /// <param name="eventData">Paramentros do EventSystem</param>
    public void OnDrag(PointerEventData eventData)
    {
        if (otherScroll && draggedItem == null)
        {
            // NÃO ESTOU DRAGANDO UM ITEM VALIDO
            parentScrollRect.OnDrag(eventData);
            parentScrollRect.SendMessage("OnDrag", eventData);
            return;
        }
        if (icon != null && draggedItem)
        {
            Canvas mycanvas = GetComponentInParent <Canvas>();
            // estou draggando um item VALIDO
            if (mycanvas.renderMode == RenderMode.ScreenSpaceCamera)
            {
                Vector3 screenPoint = Input.mousePosition;
                screenPoint.z           = 10.0f; //distance of the plane from the camera
                icon.transform.position = Camera.main.ScreenToWorldPoint(screenPoint);
            }
            else
            {
                Vector3 mouseP = Input.mousePosition;
                icon.transform.position = new Vector3(mouseP.x + mouseOffsetX, mouseP.y + mouseOffsetY);
            }


            Drag(eventData);
        }
    }
Ejemplo n.º 10
0
 public void OnDrag(PointerEventData eventData)
 {
     if (ScrollRectParent != null)
     {
         ScrollRectParent.OnDrag(eventData);
     }
 }
Ejemplo n.º 11
0
 public void OnDrag(PointerEventData eventData)
 {
     if (enabled)
     {
         MainScroll.OnDrag(eventData);
     }
 }
Ejemplo n.º 12
0
    public void OnDrag(PointerEventData eventData)
    {
        if (anotherScrollRect != null)
        {
            anotherScrollRect.OnDrag(eventData);
        }

        //判断拖动方向,防止水平与垂直方向同时响应导致的拖动时整个界面都会动

        if (dragDirection == Direction.Up || dragDirection == Direction.Down)
        {
            //anotherScrollRect.enabled = thisIsUpAndDown;
            if (thisIsUpAndDown)
            {
                isAvoid = true;
            }
            else
            {
                isAvoid = false;
            }
        }
        else
        {
            //anotherScrollRect.enabled = !thisIsUpAndDown;
            if (thisIsUpAndDown)
            {
                isAvoid = false;
            }
            else
            {
                isAvoid = true;
            }
        }
    }
Ejemplo n.º 13
0
        public void OnDrag(PointerEventData eventData)
        {
            // Push the drag action to the scroll rect too
            if (scrollRect != null)
            {
                scrollRect.OnDrag(eventData);
            }

            if (AnturaSpaceScene.I.TutorialMode &&
                AnturaSpaceScene.I.tutorialManager.CurrentTutorialFocus != this)
            {
                return;
            }

            if (ShopDecorationsManager.I.ShopContext == ShopContext.Purchase &&
                !shopAction.IsClickButton)
            {
                var mousePos  = AnturaSpaceUI.I.ScreenToUIPoint(Input.mousePosition);
                var buttonPos = AnturaSpaceUI.I.WorldToUIPoint(transform.position);
                if (mousePos.y - buttonPos.y > minHeightForDragAction)
                {
                    if (!shopAction.IsLocked)
                    {
                        shopAction.PerformDrag();
                        AudioManager.I.PlaySound(Sfx.OK);
                    }
                    else
                    {
                        ErrorFeedback();
                    }
                }
            }
        }
 //IDragHandler
 public void OnDrag(PointerEventData eventData)
 {
     if (scrollOther)
     {
         OtherScrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 15
0
 public void OnDrag(PointerEventData eventData)
 {
     if (_activeScrollRect)
     {
         _activeScrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 16
0
    public void OnDrag(PointerEventData eventData)
    {
        if (!interactable || ActiveElement != this)
        {
            return;
        }
        if (!orderableList.Orderable)
        {
            if (scrollRect != null)
            {
                scrollRect.OnDrag(eventData);
                lastEventData = eventData;
            }
        }
        else
        {
#if true // スクロール方向への移動に限定
            var pos = transform.position;
            pos.y = eventData.position.y;
            transform.position = pos;
#else
            transform.position = eventData.position.y;
#endif
            lastEventData = eventData;
        }
    }
Ejemplo n.º 17
0
        public override void OnDrag(PointerEventData eventData)
        {
            if (id != eventData.pointerId)
            {
                return;
            }

            if (isHozonticalMove)
            {
                Vector2 delta = eventData.delta;
                if (Mathf.Abs(delta.y) > Mathf.Abs(delta.x))
                {
                    delta.x = delta.y;
                }
                delta.y         = 0;
                eventData.delta = delta;
                parentScrollRect.OnDrag(eventData);
            }
            else if (isVerticalMove)
            {
                Vector2 delta = eventData.delta;
                if (Mathf.Abs(delta.x) > Mathf.Abs(delta.y))
                {
                    delta.y = delta.x;
                }
                delta.x = 0;
                base.OnDrag(eventData);
            }
        }
Ejemplo n.º 18
0
 public virtual void OnDrag(PointerEventData data)
 {
     if (scrollRect != null)
     {
         scrollRect.OnDrag(data);
     }
 }
Ejemplo n.º 19
0
 public void OnDrag(PointerEventData eventData)
 {
     if (didDrag && dragContainer.IsShowing)
     {
         if (eventData.position.y <= dragHeight)
         {
             dragContainer.transform.position = eventData.position;
             return;
         }
         HideDragContainer();
         if (this.DraggedOffDragArea != null)
         {
             this.DraggedOffDragArea(this, eventData.position, index);
         }
     }
     else
     {
         didDrag = checkDidDrag(eventData.delta) && base.CanDrag;
         if (didDrag)
         {
             handoffToDragContainer(eventData);
         }
         else
         {
             scrollRect.OnDrag(eventData);
         }
     }
 }
Ejemplo n.º 20
0
 public void OnDrag(PointerEventData eventData)
 {
     pointIdAndPos[eventData.pointerId] = eventData.position;
     if (pointIdAndPos.Count > 1)
     {
         List <Vector2> poss = new List <Vector2>();
         foreach (var item in pointIdAndPos.Values)
         {
             poss.Add(item);
         }
         Vector2 new1        = poss[0];
         Vector2 new2        = poss[1];
         float   newDistance = Vector2.Distance(new1, new2);
         float   s           = startScalePer + (newDistance - originalDistance) / originalDistance;
         if (s <= 1)
         {
             s = 1;
         }
         else if (s >= scaleAgent.maxScale)
         {
             s = scaleAgent.maxScale;
         }
         scaleAgent.currentScale = s;
         scaleAgent.ResetImage();
     }
     if (canScroll)
     {
         scrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 21
0
 public void OnDrag(PointerEventData eventData)
 {
     CheckMainScroll();
     if (MainScroll != null)
     {
         MainScroll.OnDrag(eventData);
     }
 }
 public void OnDrag(PointerEventData eventData)
 {
     //Util.CallMethod("GlobalListener", "UIDragHandle", 2);
     if (null != mScrollRect)
     {
         mScrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 23
0
 public override void OnDrag(UnityEngine.EventSystems.PointerEventData eventData)
 {
     if (onDrag != null)
     {
         onDrag(gameObject);
     }
     scrollView.OnDrag(eventData);
 }
Ejemplo n.º 24
0
 public void TouchDrag(PointerEventData eventData)
 {
     if (eventData.selectedObject == scroll)
     {
         Debug.Log("Scrolling");
         scroll.OnDrag(eventData);
     }
 }
 public override void OnDrag(PointerEventData eventData)
 {
     base.OnDrag(eventData);
     if (mScrollRect != null)
     {
         mScrollRect.OnDrag(eventData);
     }
 }
Ejemplo n.º 26
0
    static int OnDrag(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        ScrollRect       obj  = LuaScriptMgr.GetUnityObject <ScrollRect>(L, 1);
        PointerEventData arg0 = LuaScriptMgr.GetNetObject <PointerEventData>(L, 2);

        obj.OnDrag(arg0);
        return(0);
    }
Ejemplo n.º 27
0
    public void OnDrag(PointerEventData e)
    {
        if (longPressFlg)
        {
            // clamp 縦を計算
            RectTransform recListTrs     = this.transform.parent.parent.GetComponent <RectTransform>();                 // listScroll
            RectTransform rctTrsActPanel = GameObject.Find("MainView/ActiveMemberListPanel").transform.GetComponent <RectTransform> ();
            RectTransform rctTrsFncPanel = GameObject.Find("MainView/FuntionPanel").transform.GetComponent <RectTransform> ();
            RectTransform rctTrsItem     = this.transform.parent.GetComponent <RectTransform> ();
            Vector3       listTwh        = recListTrs.TransformVector(new Vector3(recListTrs.anchoredPosition.x, recListTrs.anchoredPosition.y));
            Vector3       listWh         = recListTrs.TransformVector(new Vector3(recListTrs.rect.width, recListTrs.sizeDelta.y));
            Vector3       actWh          = rctTrsActPanel.TransformVector(new Vector3(rctTrsActPanel.rect.width, rctTrsActPanel.sizeDelta.y));
            Vector3       fncWh          = rctTrsFncPanel.TransformVector(new Vector3(rctTrsFncPanel.rect.width, rctTrsFncPanel.sizeDelta.y));
            Vector3       itemWh         = rctTrsFncPanel.TransformVector(new Vector3(rctTrsItem.rect.width, rctTrsItem.sizeDelta.y));
            viewPointTop = listTwh.y + actWh.y + fncWh.y - itemWh.y / 2 + 1;
            viewPointBtm = listTwh.y + actWh.y + fncWh.y - listWh.y + itemWh.y / 2 + 1;

            p.x = posOffset.x + e.position.x;
            p.y = posOffset.y + e.position.y;
            p.x = Mathf.Clamp(p.x, parentPos.x, parentPos.x);
            p.y = Mathf.Clamp(p.y, viewPointBtm, viewPointTop);
            this.transform.parent.position = p;

            int newSiblingIndex = placeholderParent.childCount;
            for (int i = 0; i < placeholderParent.childCount; i++)
            {
                if (this.transform.parent.position.y > placeholderParent.GetChild(i).position.y + itemHalfHight)
                {
                    newSiblingIndex = i;
                    if (placeholderParent.transform.GetSiblingIndex() < newSiblingIndex)
                    {
                        newSiblingIndex--;
                    }

                    break;
                }
            }
            placeHolder.transform.SetSiblingIndex(newSiblingIndex);

            RectTransform rctTrsVtc = GameObject.Find("MainView/ActiveMemberListPanel/ListScroll/LayoutVertical").transform as RectTransform;
            float         mgn       = rctTrsVtc.sizeDelta.y / rctTrsVtc.childCount / rctTrsVtc.sizeDelta.y;
            ScrollRect    scrRect   = this.transform.parent.parent.GetComponent <ScrollRect>();
            if (p.y > viewPointTop - 5 && placeHolder.transform.GetSiblingIndex() > 0)
            {
                scrRect.verticalNormalizedPosition += mgn;
            }
            if (p.y < viewPointBtm + 5 && placeHolder.transform.GetSiblingIndex() < rctTrsVtc.childCount - 1)
            {
                scrRect.verticalNormalizedPosition -= mgn;
            }
        }
        else
        {
            eventLP.enableLongPress = false;
            transform.DoParentEventSystemHandler <IDragHandler> ((parent) => { scrRct.OnDrag(e); });
        }
    }
Ejemplo n.º 28
0
 public override void OnDrag(PointerEventData eventData)
 {
     base.OnDrag(eventData);
     if (fatherScrollRect == null)
     {
         return;
     }
     fatherScrollRect.OnDrag(eventData);
 }
Ejemplo n.º 29
0
 public override void OnDrag(PointerEventData eventData)
 {
     if (forParent)
     {
         NM.OnDrag(eventData);
         parentScrollRect.OnDrag(eventData);
     }
     base.OnDrag(eventData);
 }
Ejemplo n.º 30
0
    public override void OnDrag(PointerEventData eventData)
    {
        // スクロール対象確認
        ScrollType prevScrollType = scrollType_;

        if (backScrollRect_ == null)
        {
            scrollType_ = ScrollType.Self;
        }
        if (scrollType_ == ScrollType.NotDrag)
        {
            if (vertical == horizontal)
            {
                scrollType_ = ScrollType.Self;
            }
            else if (vertical)
            {
                if (Mathf.Abs(eventData.delta.x) < Mathf.Abs(eventData.delta.y))
                {
                    scrollType_ = ScrollType.Self;
                }
                else
                {
                    scrollType_ = ScrollType.Back;
                }
            }
            else if (horizontal)
            {
                if (Mathf.Abs(eventData.delta.x) > Mathf.Abs(eventData.delta.y))
                {
                    scrollType_ = ScrollType.Self;
                }
                else
                {
                    scrollType_ = ScrollType.Back;
                }
            }
        }

        // 裏をスクロールする場合にScrollRectの値をコピー
        if (prevScrollType == ScrollType.NotDrag && scrollType_ == ScrollType.Back)
        {
            // 裏のScrollRectを強制的にドラッグ開始する
            backScrollRect_.OnBeginDrag(eventData);
        }
        else
        {
            if (scrollType_ == ScrollType.Back)
            {
                backScrollRect_.OnDrag(eventData);
            }
            else
            {
                base.OnDrag(eventData);
            }
        }
    }