コード例 #1
0
    /// <summary>
    /// Select towers or position ghosts
    /// </summary>
    void OnTap(PointerActionInfo pointer)
    {
        // We only respond to mouse info
        var mouseInfo = pointer as MouseButtonInfo;

        if (mouseInfo != null && !mouseInfo.startedOverUI)
        {
            XEventBus.Instance.Post(EventId.UserClick);
            if (gameUIManager.isBuilding)
            {
                if (mouseInfo.mouseButtonId == 0)
                {
                    //放置
                    gameUIManager.TryPlaceTarget(mouseInfo);
                }
                else // RMB cancels
                {
                    //取消动作
                    gameUIManager.CancelGhostPlacement();
                }
            }
            else
            {
                if (mouseInfo.mouseButtonId == 0) // LMB confirms
                {
                    //尝试选择
                    gameUIManager.TrySelectTarget(mouseInfo);
                }
            }
        }
    }
コード例 #2
0
        protected override void OnRelease(PointerActionInfo pointer)
        {
            base.OnRelease(pointer);
            var touchInfo = pointer as TouchInfo;

            if (touchInfo != null && !touchInfo.startedOverUI)
            {
                if (gameUIManager.isBuilding)
                {
                    gameUIManager.CancelGhostPlacement();
                }
            }
        }