public void UpdateData() { Dictionary <int, HelpLevelData> allData = HelpLevelData.GetMetaData(); int i = 0; GameObject item; HelpLevelItem hlItem; string check = string.Empty; foreach (HelpLevelData hlData in allData.Values) { bool first = false; if (i >= itemPool_.Count) { item = (GameObject)GameObject.Instantiate(itemPre_) as GameObject; item.transform.parent = grid.transform; item.transform.localPosition = Vector3.zero; item.transform.localScale = Vector3.one; item.SetActive(true); itemPool_.Add(item); first = true; } else { item = itemPool_[i]; } hlItem = item.GetComponent <HelpLevelItem>(); if (first) { if (!string.IsNullOrEmpty(hlData.openui)) { check = string.Format("{0}>{1}", "ui", hlData.openui); } else if (!string.IsNullOrEmpty(hlData.npc)) { check = string.Format("{0}>{1}", "npc", hlData.npc); } else { check = ""; } hlItem.SetData(hlData.icon, hlData.level, hlData.desc, check); } hlItem.UpdateLock(hlData.level > GamePlayer.Instance.GetIprop(PropertyType.PT_Level)); i++; } grid.Reposition(); }
public static HelpLevelData NextData(int crtlevel) { HelpLevelData data = null; int nextLv = int.MaxValue; foreach (HelpLevelData hlData in metaData.Values) { if (hlData.level > crtlevel) { if (hlData.level < nextLv) { nextLv = hlData.level; data = hlData; } } } return(data); }
public static void ParseData(string content, string fileName) { metaData = new Dictionary <int, HelpLevelData>(); CSVParser parser = new CSVParser(); if (!parser.Parse(content)) { ClientLog.Instance.LogError("HelpLevelData" + ConfigLoader.Instance.csvext + "解析错误"); return; } int recordCounter = parser.GetRecordCounter(); HelpLevelData data = null; for (int i = 0; i < recordCounter; ++i) { data = new HelpLevelData(); data.id = parser.GetInt(i, "id"); data.icon = parser.GetString(i, "icon"); data.name = parser.GetString(i, "name"); data.desc = parser.GetString(i, "desc"); data.level = parser.GetInt(i, "level"); data.openui = parser.GetString(i, "openui"); data.npc = parser.GetString(i, "npc"); if (metaData.ContainsKey(data.id)) { ClientLog.Instance.LogError("HelpLevelData" + ConfigLoader.Instance.csvext + "ID重复"); return; } metaData[data.id] = data; } parser.Dispose(); parser = null; }