void onClick_Leftbtn_Btn(GameObject caster) { bool show = IsShowRightBtn(); bool guideForceShow = false; if (null != caster) { GuideTriggerData gtData = caster.GetComponent <GuideTriggerData>(); if (null != gtData && gtData.IsGuideTrigger) { gtData.IsGuideTrigger = false; guideForceShow = true; } } UIDefine.GameObjMoveStatus stats = UIDefine.GameObjMoveStatus.None; if (show) { if (!guideForceShow) { stats = UIDefine.GameObjMoveStatus.MoveToInvisible; } } else { stats = UIDefine.GameObjMoveStatus.MoveToVisible; } //发送UI,功能按钮状态变化事件 SendGameObjMoveStatusEvent(stats, m_lst_FuncBtnsRight); }
/// <summary> /// 发送UI,功能按钮状态变化事件 /// </summary> /// <param name="status"></param> /// <param name="objs"></param> private void SendGameObjMoveStatusEvent(UIDefine.GameObjMoveStatus status, List <GameObject> objs) { Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.UIEVENTGAMEOBJMOVESTATUSCHANGED, new UIDefine.GameObjMoveData() { Status = status, Objs = objs, }); }
void onClick_BtnArrow_Btn(GameObject caster) { bool show = m_widget_Offset.transform.localPosition.Equals(m_trans_OffsetPosShow.transform.localPosition); UIDefine.GameObjMoveStatus moveStatus = (show) ? UIDefine.GameObjMoveStatus.MoveToInvisible : UIDefine.GameObjMoveStatus.MoveToVisible; UIDefine.GameObjMoveStatus moveStatusEnd = (moveStatus == UIDefine.GameObjMoveStatus.MoveToInvisible) ? UIDefine.GameObjMoveStatus.Invisible : UIDefine.GameObjMoveStatus.Visible; PlayUIContentAnim(show); CoroutineMgr.Instance.StartCorountine(SendGameObjMoveStatusEvent(moveStatus)); CoroutineMgr.Instance.StartCorountine(SendGameObjMoveStatusEvent(moveStatusEnd, 0.2f)); }
private System.Collections.IEnumerator SendGameObjMoveStatusEvent(UIDefine.GameObjMoveStatus status, float delay = 0f) { yield return(new WaitForSeconds(delay)); m_lstGuideMoveObjs.Clear(); if (null != m_trans_grid) { Transform ts = null; for (int i = 0; i < m_trans_grid.childCount; i++) { ts = m_trans_grid.GetChild(i); if (null != ts && !m_lstGuideMoveObjs.Contains(ts.gameObject)) { m_lstGuideMoveObjs.Add(ts.gameObject); } } } Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.UIEVENTGAMEOBJMOVESTATUSCHANGED, new UIDefine.GameObjMoveData() { Status = status, Objs = m_lstGuideMoveObjs, }); }