예제 #1
0
    private void ApplyDragState()
    {
        if (mIsDragging)
        {
            //dragCursor
            if (_dragCursor)
            {
                _dragCursor.gameObject.SetActive(true);
                _dragCursor.ApplyIcon(dragSpriteIcon);
                _dragCursor.RegisterDropValidCheck(this);
            }

            if (dragActiveGO)
            {
                dragActiveGO.SetActive(true);
            }
            if (dragColorGroup)
            {
                dragColorGroup.ApplyColor(dragActiveColor);
            }
            if (dragInactiveGO)
            {
                dragInactiveGO.SetActive(false);
            }
            if (dragDisplayRoot)
            {
                dragDisplayRoot.gameObject.SetActive(true);
            }
        }
        else
        {
            if (_dragCursor)
            {
                _dragCursor.gameObject.SetActive(false);
                _dragCursor.UnregisterDropValidCheck(this);
            }

            if (dragActiveGO)
            {
                dragActiveGO.SetActive(false);
            }
            if (dragColorGroup)
            {
                dragColorGroup.Revert();
            }
            if (dragInactiveGO)
            {
                dragInactiveGO.SetActive(true);
            }
            if (dragDisplayRoot)
            {
                dragDisplayRoot.gameObject.SetActive(false);
            }
        }
    }
예제 #2
0
    public void SetDragCursor(DragCursorWorld cursor)
    {
        if (_dragCursor != cursor)
        {
            if (mIsDragging && _dragCursor)
            {
                _dragCursor.UnregisterDropValidCheck(this);
            }

            _dragCursor = cursor;

            if (mIsDragging && _dragCursor)
            {
                _dragCursor.RegisterDropValidCheck(this);
            }
        }
    }