IEnumerator PrepareWndAsync(UIFlag uiID) { if (uiID != UIFlag.none) { UIWnd uiWnd = GetUIWnd(uiID); if (uiWnd == null) { if (!IsUICaching(uiID)) { m_lstCacheUIID.Add(uiID); IEnumerator itor = UIWndLoader.LoadUIWndAsync(uiID.ToString(), false); while (itor.MoveNext()) { yield return(null); } uiWnd = GetUIWnd(uiID); if (uiWnd != null) { uiWnd.gameObject.SetActive(false); } else { Debug.LogError("prepare ui failed: " + uiID.ToString()); } } } } }
IEnumerator ShowWndAsync(UIFlag showID, UIFlag preID, object exData, UIFlag hideID) { //AmusementMgr.StopMove(); //LoadingMgr.ShowLoading(true); CheckPreUI(preID, hideID); HideWndSync(hideID); if (!IsUICaching(showID)) { IEnumerator itor = PrepareWndAsync(showID); while (itor.MoveNext()) { yield return(null); } itor = SwitchWndAsync(showID, preID, exData); while (itor.MoveNext()) { yield return(null); } } //TipsBoxMgr.HideAllTipsBox(); //LoadingMgr.ShowLoading(false); }
public void RegisterFlagZone(Zone zone) { flagZones.Add(zone); UIFlag uiFlag = NewPing(zone); uiFlag.Init(zone.teamIndex, zone.type); }
IEnumerator SwitchWndAsync(UIFlag targetID, UIFlag preID, object exData) { if (targetID != UIFlag.none) { if (!IsUIShowing(targetID)) { UIWnd targetWnd = GetUIWnd(targetID); if (targetWnd != null) { targetWnd.gameObject.SetActive(true); m_lstShowUIID.Add(targetID); targetWnd.ReadyShow = false; WndData targetData = new WndData(exData); targetWnd.PreWndID = preID; targetWnd.OnShowWnd(targetData); while (!targetWnd.ReadyShow) { yield return(null); } } else { Debug.LogError("ui should be prepared before switched: " + targetID.ToString()); } } } }
private UIFlag NewPing(Zone zone) { GameObject newUI = Instantiate(uiFlagZonePrefab, canvas.transform); UIFlag uiFlag = newUI.GetComponent <UIFlag>(); uiFlag.GetComponent <UI360>().FeedTarget(zone.gameObject); return(uiFlag); }
public static bool IsUIShowing(UIFlag uiID) { if (uiID != UIFlag.none && uimgr.IsShowing(uiID)) { return(true); } return(false); }
public static bool IsUICaching(UIFlag uiID) { if (uiID != UIFlag.none && uimgr.m_lstCacheUIID.Contains(uiID)) { return(true); } return(false); }
public static IEnumerator ShowUIAsync(UIFlag showID, UIFlag preID, object exData) { IEnumerator itor = uimgr.ShowWndAsync(showID, preID, exData, UIFlag.none); while (itor.MoveNext()) { yield return(null); } }
public static IEnumerator SwitchUIAsync(UIFlag showID, object exData) { IEnumerator itor = uimgr.SwitchWndAsync(showID, UIFlag.none, exData); while (itor.MoveNext()) { yield return(null); } }
public static IEnumerator PrepareUIAsync(UIFlag showID) { IEnumerator itor = uimgr.PrepareWndAsync(showID); while (itor.MoveNext()) { yield return(null); } }
public static IEnumerator DownLoadUISync(UIFlag showID) { IEnumerator itor = uimgr.DownLoadWndSync(showID); while (itor.MoveNext()) { yield return(null); } }
IEnumerator DownLoadWndSync(UIFlag uiID) { if (uiID != UIFlag.none)//正确的ID; { IEnumerator itor = UIWndLoader.DownLoadUIWndAsync(uiID.ToString()); while (itor.MoveNext()) { yield return(null); } } }
public static UIWnd GetUIWnd(UIFlag uiID) { if (uiID != UIFlag.none) { if (uimgr.m_mapAllUIWnd.ContainsKey(uiID)) { return(uimgr.m_mapAllUIWnd[uiID]); } } return(null); }
private bool IsShowing(UIFlag flag) { for (int i = 0; i < m_lstShowUIID.Count; ++i) { if (m_lstShowUIID[i] == flag) { return(true); } } return(false); }
void HideWndSync(UIFlag hideID) { if (hideID != UIFlag.none) { if (IsUIShowing(hideID)) { m_lstShowUIID.Remove(hideID); UIWnd hideWnd = GetUIWnd(hideID); if (hideWnd != null) { hideWnd.OnHideWnd(); hideWnd.gameObject.SetActive(false); } } } }
IEnumerator DestoryAllWndAsync() { UICoroutine.uiCoroutine.gameObject.SetActive(false); //停止所有UICoroutine UICoroutine.uiCoroutine.gameObject.SetActive(true); int showIDCount = m_lstShowUIID.Count; for (int i = 0; i < showIDCount; ++i) { UIFlag hideID = m_lstShowUIID[i]; UIWnd hideWnd = GetUIWnd(hideID); if (hideWnd != null) { hideWnd.OnHideWnd(); hideWnd.gameObject.SetActive(false); } } m_lstShowUIID.Clear(); Dictionary <UIFlag, UIWnd> mapAllMap = new Dictionary <UIFlag, UIWnd>(m_mapAllUIWnd); m_mapAllUIWnd.Clear(); m_lstCacheUIID.Clear(); foreach (KeyValuePair <UIFlag, UIWnd> kvp in mapAllMap) { if (kvp.Value != null && kvp.Value.gameObject) { GameObject.Destroy(kvp.Value.gameObject); yield return(null); //wait for a frame } UIWndLoader.ReleaseUIWnd(kvp.Key.ToString()); } mapAllMap.Clear(); ////DynamicPrefabMgr.Instance.OnDestroyUI(); UIWndLoader.ReleaseAllUIWnd(); //check again UIAtlasLoader.ReleaseAllAtlas(); //TipsBoxMgr.HideAllTipsBox(); //MsgWaitMgr.StopWaiting(); //LoadingMgr.HideViolently(); }
public static IEnumerator DownLoadMatch() { //yield return UICoroutine.uiCoroutine.StartCoroutine(ClientResourcesMgr.LoadClientResource()); RoomData.PrepareRoom(false, 27, 2246, SongMode.Taiko, "", null, 0); IEnumerator itor = null; itor = AnimationLoader.DownLoadStageSceneAnimation(RoomData.PlayMusciInfo.m_strMusicSource, RoomData.PlaySongMode); while (itor.MoveNext()) { yield return(null); } CSceneInfo sceneInfo = StaticData.SceneDataMgr.GetSceneByID((byte)RoomData.PlayScene); if (sceneInfo != null) { itor = SceneLoader.DownLoadStageScene(sceneInfo.m_strSceneStage); while (itor.MoveNext()) { yield return(null); } } UIFlag targetFlag = UIFlag.ui_taigu; itor = UIMgr.DownLoadUISync(targetFlag); while (itor.MoveNext()) { yield return(null); } itor = LoadMatch(null); while (itor.MoveNext()) { yield return(null); } SwitchingControl.HideSwitching(); }
private void CheckPreUI(UIFlag preID, UIFlag hideID) { //最多同时显示2个wnd UIFlag flag = preID; if (flag == UIFlag.none) { flag = hideID; } if (flag != UIFlag.none) { UIWnd preWnd = GetUIWnd(flag); if (preWnd != null && preWnd.PreWndID != UIFlag.none) { if (IsShowing(flag)) { HideWndSync(preWnd.PreWndID); } } } }
public static void HideUI(UIFlag hideID) { uimgr.HideWndSync(hideID); }
public static void ShowUISync(UIFlag showID, UIFlag preID, object exData, UIFlag hideID) { UICoroutine.uiCoroutine.StartCoroutine(uimgr.ShowWndAsync(showID, preID, exData, hideID)); }
public static void ShowUISync(UIFlag showID, UIFlag preID, object exData) { ShowUISync(showID, preID, exData, UIFlag.none); }
public static void ShowUISync(UIFlag showID, object exData, UIFlag hideID) { ShowUISync(showID, UIFlag.none, exData, hideID); }
public static void SetMainUI(UIFlag uiID) { uimgr.SetMainWnd(uiID); }
public IEnumerator PrepareUIAsync(UIFlag showID) { return(UIMgr.PrepareUIAsync(showID)); }
/// <summary> /// 初始化比赛 /// </summary> /// <param name="curUI"></param> public IEnumerator InitMatch(UIFlag uiFlag) { yield return(null); }
void SetMainWnd(UIFlag uiID) { m_MainWnd = uiID; }
public BigMamaSwitchInfo(UIFlag flag, object exData) { NextUIFlag = flag; ExData = exData; }
public ChallengeSwitchInfo(UIFlag flag, object exData) { NextUIFlag = flag; ExData = exData; }
public GuideSwitchInfo(UIFlag flag, object exData) { NextUIFlag = flag; ExData = exData; }
public IEnumerator SwitchUIAsync(UIFlag showID, object exData) { return(UIMgr.SwitchUIAsync(showID, exData)); }