public void ShowWindow <T>(eWindowsID windowId) where T : WindowsBasePanel { if (!ConfigData.Instance.UIWindowsDataDict_.ContainsKey((int)windowId)) { Debug.LogError("窗口Id [" + windowId + "] 不存在,请检查配表。"); return; } UIWindowsData windowData = ConfigData.Instance.UIWindowsDataDict_[(int)windowId]; if (windowData != null) { switch (windowData._opentype) { case 1: { ShowMainWindow <T>(windowId); } break; case 2: { } break; case 3: { } break; default: break; } } else { Debug.LogError("窗口Id [" + windowId + "] 配表数据为空。"); } }
public void LoadConfigs() { //UIWindows配置表 ReadCsv config = new ReadCsv("UIWindows"); for (int i = 3; i < config.GetRow(); i++) { UIWindowsData data = new UIWindowsData(config, i); this.UIWindowsDataDict_.Add(data._id, data); } //BattleSatge配置表 config = new ReadCsv("BattleSatge"); for (int i = 3; i < config.GetRow(); i++) { BattleSatgeConfigData data = new BattleSatgeConfigData(config, i); this.BattleSatgeConfigDict.Add(data._id, data); } //HeroConfigData配置表 config = new ReadCsv("Hero"); for (int i = 3; i < config.GetRow(); i++) { HeroConfigData data = new HeroConfigData(config, i); this.HeroConfigDict.Add(data._id, data); } }
private void ShowMainWindow <T>(eWindowsID windowId) where T : WindowsBasePanel { this.IsShowingWindow_ = true; if (this.CurShowingWindow_ != null) { if (this.CurShowingWindow_.WindowData_._id == (int)windowId) { this.IsShowingWindow_ = false; return; } else { CloseMainWindow((eWindowsID)this.CurShowingWindow_.WindowData_._id); } } if (this.DeletingWindowsDict_.ContainsKey(windowId)) { this.CurShowingWindow_ = this.DeletingWindowsDict_[windowId]; this.CurShowingWindow_.gameObject.SetActive(true); this.DeletingWindowsDict_.Remove(windowId); } else { UIWindowsData windowData = ConfigData.Instance.UIWindowsDataDict_[(int)windowId]; T windowScript = AddChild <T>(this.gameObject); if (windowScript != null) { windowScript.gameObject.SetActive(true); windowScript.WindowData_ = windowData; this.CurShowingWindow_ = windowScript; } else { Debug.LogError("窗口[" + windowData._name + "] 创建失败,请检查预制路径或实例化是否成功。"); } } this.IsShowingWindow_ = false; }