Example #1
0
        public override void Execute(float deltaTime)
        {
            bool mouseIsDown = Input.GetMouseButton(0);

            if (!mouseIsDown)
            {
                List <RaycastResult> results = Settings.GetUIObjects();

                foreach (RaycastResult r in results)
                {
                    IDroppableArea a = r.gameObject.GetComponentInParent <IDroppableArea>();
                    if (a != null)
                    {
                        a.OnDrop();
                        break;
                    }
                }

                currentCard.instance.gameObject.SetActive(true);
                currentCard.instance = null;

                Settings.gameManager.SetState(playerControlState);
                onPlayerControlState.Raise();
                return;
            }
        }
        private void CheckAndExecuteDrop(GalaxyAdorner adorner, Point touchPoint)
        {
            VisualTreeHelper.HitTest(DragOverlay, null,
                                     new HitTestResultCallback(MyHitTestResult),
                                     new PointHitTestParameters(touchPoint));

            foreach (UIElement item in hitResultsList)
            {
                if (item is IDroppableArea)
                {
                    IDroppableArea area = item as IDroppableArea;
                    area.Drop(adorner);
                }
            }
            hitResultsList.Clear();
        }
Example #3
0
        /// <summary>
        /// This function occurs when any element on the canvas is dropped
        /// </summary>
        /// <param name="sender">Originating element</param>
        /// <param name="args">Event args</param>
        private void Element_ElementDropped(object sender, DraggableElementEventArgs args)
        {
            IDroppableArea finalDropTarget = null;

            foreach (UIElement child in Children)
            {
                if (child is IDroppableArea)
                {
                    IDroppableArea dropTarget = child as IDroppableArea;
                    if (dropTarget != args.Element && dropTarget.IsUnder(args.DragPosition))
                    {
                        finalDropTarget = dropTarget;
                    }
                }
            }
            if (finalDropTarget != null)
            {
                finalDropTarget.Drop(args.Element);
            }
        }