示例#1
0
 public void OnUpdate()
 {
     if (m_SelectedGameObject == null)
     {
         //m_SelectedGameObject = UINaviManager.Instance.DefaultObject;
         //m_SelectedGameObject.AddOutLine();
         return;
     }
     if (LTInput.GetKeyDown(KeyCode2.Up))
     {
         if (m_SelectedGameObject && m_SelectedGameObject.GetUpNavi())
         {
             m_SelectedGameObject.RemoveOutLine();
             m_SelectedGameObject = m_SelectedGameObject.GetUpNavi();
             m_SelectedGameObject.AddOutLine();
         }
     }
     else if (LTInput.GetKeyDown(KeyCode2.Left))
     {
         if (m_SelectedGameObject && m_SelectedGameObject.GetLeftNavi())
         {
             m_SelectedGameObject.RemoveOutLine();
             m_SelectedGameObject = m_SelectedGameObject.GetLeftNavi();
             m_SelectedGameObject.AddOutLine();
         }
     }
     else if (LTInput.GetKeyDown(KeyCode2.Right))
     {
         if (m_SelectedGameObject && m_SelectedGameObject.GetRightNavi())
         {
             m_SelectedGameObject.RemoveOutLine();
             m_SelectedGameObject = m_SelectedGameObject.GetRightNavi();
             m_SelectedGameObject.AddOutLine();
         }
     }
     else if (LTInput.GetKeyDown(KeyCode2.Down))
     {
         if (m_SelectedGameObject && m_SelectedGameObject.GetDownNavi())
         {
             m_SelectedGameObject.RemoveOutLine();
             m_SelectedGameObject = m_SelectedGameObject.GetDownNavi();
             m_SelectedGameObject.AddOutLine();
         }
     }
     else if (LTInput.GetKeyDown(KeyCode2.A))
     {
         if (m_SelectedGameObject)
         {
             if (m_ClickHandlerDic.ContainsKey(m_SelectedGameObject))
             {
                 m_ClickHandlerDic[m_SelectedGameObject](m_SelectedGameObject);
             }
         }
     }
 }
示例#2
0
    public void Auto()
    {
        if (EventSystem.current == null || EventSystem.current.currentSelectedGameObject == null)
        {
            return;
        }

        // 禁用默认的事件发送器
        EventSystem.current.sendNavigationEvents = false;

        // 获取当前焦点
        var focus   = EventSystem.current.currentSelectedGameObject.GetComponent <Selectable>();
        var handler = focus as ISubmitHandler;

        if (LTInput.GetKeyDown(KeyCode2.A) && handler != null)
        {
            handler.OnSubmit(new BaseEventData(EventSystem.current));
            return;
        }

        // 下一焦点
        Selectable nextFocus = null;

        if (LTInput.GetKeyDown(KeyCode2.Up))
        {
            nextFocus = focus.FindSelectableOnUp();
        }
        else if (LTInput.GetKeyDown(KeyCode2.Down))
        {
            nextFocus = focus.FindSelectableOnDown();
        }
        else if (LTInput.GetKeyDown(KeyCode2.Left))
        {
            nextFocus = focus.FindSelectableOnLeft();
        }
        else if (LTInput.GetKeyDown(KeyCode2.Right))
        {
            nextFocus = focus.FindSelectableOnRight();
        }

        if (nextFocus != null)
        {
            // 如果下一个方向对象不为空,则设为新焦点
            EventSystem.current.SetSelectedGameObject(nextFocus.gameObject);
        }
    }
示例#3
0
        public void Running()
        {
            if (Input.touchCount >= 4 && itCanBeVisible)
            {
                itCanBeVisible = false;
                RefreshWindow();
                visible = !visible;
                monoDriver.StartCoroutine(DelaySetVisible());
            }

            if (((Input.GetKey(KeyCode.DownArrow) && Input.GetKey(KeyCode.LeftArrow) && Input.GetKey(KeyCode.RightArrow)) ||
                 Input.GetKeyDown(KeyCode.Alpha0)) &&
                itCanBeVisible)
            {
                itCanBeVisible = false;
                RefreshWindow();
                visible = !visible;
                monoDriver.StartCoroutine(DelaySetVisible());
            }

            if (App.HasBind <IInput>())
            {
                //清理日志
                if (LTInput.GetKeyDown(KeyCode2.X))
                {
                    logs.Clear();
                }

                //堆栈开关
                if (LTInput.GetKeyDown(KeyCode2.Y))
                {
                    StackLog = !StackLog;
                }

                if (LTInput.GetKey(KeyCode2.Down))
                {
                    scrollPosition += new Vector2(0, 10);
                }

                if (LTInput.GetKey(KeyCode2.Up))
                {
                    scrollPosition -= new Vector2(0, 10);
                }
            }
        }
示例#4
0
    public override void OnUpdate()
    {
        if (!MusicManager.Instance.IsPlaying())
        {
            _iCtrl.Close();
            return;
        }

        LinkedListNode <BulletItem> temp = m_BulletObjs.First;

        while (temp != null)
        {
            BulletState    bulletState       = BulletState.Normal;
            BulletItem     item              = temp.Value;
            MusicEventData musicData         = item.musicData;
            float          bulletCollisionX1 = item.obj.transform.position.x; // - item.collisionSize.x * 0.5f;

            if (bulletCollisionX1 <= m_Player.transform.position.x)
            {
                bulletState = BulletState.Dead;
            }
            else
            {
                //进入外圈
                if (bulletCollisionX1 <= m_OutTargetX2 && bulletCollisionX1 >= m_OutTargetX1)
                {
                    bulletState = BulletState.IntoOut;
                    if (bulletCollisionX1 <= m_InnerTargetX2 && bulletCollisionX1 >= m_InnerTargetX1)
                    {
                        bulletState = BulletState.IntoInner;
                    }
                }
            }

            //Debug.Log(bulletState);
            switch (bulletState)
            {
            case BulletState.Dead:
                m_BulletObjs.Remove(temp);
                GameObject.Destroy(item.obj);
                break;

            case BulletState.Normal:
                switch (musicData.oper)
                {
                case MusicOper.LongUp:
                    if (LTInput.GetKey(KeyCode2.Left))
                    {
                        if (item.collisionPoint != Vector3.zero)
                        {
                            float offset = item.collisionPoint.x - bulletCollisionX1;
                            item.maskTrans.sizeDelta = new Vector2(item.maskSize.x - offset, item.maskTrans.sizeDelta.y);
                        }
                    }
                    break;

                case MusicOper.LongDown:
                    if (LTInput.GetKey(KeyCode2.Right))
                    {
                        if (item.collisionPoint != Vector3.zero)
                        {
                            float offset = Mathf.Abs(item.collisionPoint.x - bulletCollisionX1);
                            item.maskTrans.sizeDelta = new Vector2(item.maskSize.x - offset, item.maskTrans.sizeDelta.y);
                        }
                    }
                    break;
                }
                break;

            case BulletState.IntoOut:
            case BulletState.IntoInner:
            {
                switch (musicData.oper)
                {
                case MusicOper.Up:
                    if (LTInput.GetKeyDown(KeyCode2.Left))
                    {
                        m_BulletObjs.Remove(temp);
                        GameObject.Destroy(item.obj);
                    }
                    break;

                case MusicOper.LongUp:
                    if (LTInput.GetKey(KeyCode2.Left))
                    {
                        if (item.collisionPoint == Vector3.zero)
                        {
                            item.collisionPoint = new Vector3(bulletCollisionX1, 0, 0);
                        }

                        float offset = item.collisionPoint.x - bulletCollisionX1;
                        item.maskTrans.sizeDelta = new Vector2(item.maskSize.x - offset, item.maskTrans.sizeDelta.y);
                    }
                    break;

                case MusicOper.Down:
                    if (LTInput.GetKeyDown(KeyCode2.Right))
                    {
                        m_BulletObjs.Remove(temp);
                        GameObject.Destroy(item.obj);
                    }
                    break;

                case MusicOper.LongDown:
                    if (LTInput.GetKey(KeyCode2.Right))
                    {
                        if (item.collisionPoint == Vector3.zero)
                        {
                            item.collisionPoint = new Vector3(bulletCollisionX1, 0, 0);
                        }
                        float offset = Mathf.Abs(item.collisionPoint.x - bulletCollisionX1);
                        item.maskTrans.sizeDelta = new Vector2(item.maskSize.x - offset, item.maskTrans.sizeDelta.y);
                    }
                    break;
                }
            }
            break;
            }

            temp = temp.Next;
        }
    }