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); } } } }
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); } }
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); } } }
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; } }