public static void ParseData(string content, string fileName) { metaData = new Dictionary <int, CheatsData> (); CSVParser parser = new CSVParser(); if (!parser.Parse(content)) { ClientLog.Instance.LogError("CheatsData" + ConfigLoader.Instance.csvext + "解析错误"); return; } int recordCounter = parser.GetRecordCounter(); CheatsData data = null; for (int i = 0; i < recordCounter; ++i) { data = new CheatsData(); data.id_ = parser.GetInt(i, "ID"); data.name_ = parser.GetString(i, "Name"); data.desc_ = parser.GetString(i, "Desc"); data.level_ = parser.GetInt(i, "Level"); data.group_ = parser.GetInt(i, "Group"); data.type_ = (HelpType)Enum.Parse(typeof(HelpType), parser.GetString(i, "Type")); data.find_ = parser.GetString(i, "Find"); if (!string.IsNullOrEmpty(parser.GetString(i, "UI"))) { data.uiType_ = (HelpRaiseType)Enum.Parse(typeof(HelpRaiseType), parser.GetString(i, "UI")); } else { data.uiType_ = HelpRaiseType.HRT_None; } if (metaData.ContainsKey(data.id_)) { ClientLog.Instance.LogError("CheatsData" + ConfigLoader.Instance.csvext + "ID重复"); return; } metaData[data.id_] = data; } parser.Dispose(); parser = null; }
private void UpdateList(HelpType type) { if (_type == type) { return; } _type = type; UpdateCellList(); foreach (CheatsData x in CheatsData.GetData().Values) { if (x.type_ == type) { GameObject objCell = null; if (cellPool.Count > 0) { objCell = cellPool[0]; cellPool.Remove(objCell); UIManager.RemoveButtonAllEventHandler(objCell); } else { objCell = Object.Instantiate(cell) as GameObject; } HelpBookCellUI cellUI = objCell.GetComponent <HelpBookCellUI>(); cellUI.Cheats = x; //UIManager.SetButtonEventHandler (objCell, EnumButtonEvent.OnClick, OnClickSkill, 0, 0); objCell.transform.parent = grid.transform; objCell.gameObject.SetActive(true); objCell.transform.localScale = Vector3.one; cellList.Add(objCell); } } grid.Reposition(); }