public static void ParseData(string content, string fileName) { metaData = new Dictionary <int, PvpRewardData> (); CSVParser parser = new CSVParser(); if (!parser.Parse(content)) { ClientLog.Instance.LogError("PvRrewardData" + ConfigLoader.Instance.csvext + "解析错误"); return; } int recordCounter = parser.GetRecordCounter(); PvpRewardData data = null; for (int i = 0; i < recordCounter; ++i) { data = new PvpRewardData(); data.id_ = parser.GetInt(i, "runk"); data.min_ = parser.GetInt(i, "min"); data.max_ = parser.GetInt(i, "max"); data.times_ = parser.GetInt(i, "dropID_senson"); data.day_ = parser.GetInt(i, "dropID_day"); data.senson_ = parser.GetInt(i, "dropID_senson"); data.rankName_ = parser.GetString(i, "rankName"); if (metaData.ContainsKey(data.id_)) { ClientLog.Instance.LogError("PvRrewardData" + ConfigLoader.Instance.csvext + "ID重复 " + data.id_); return; } metaData[data.id_] = data; } parser.Dispose(); parser = null; }
private void UpdataPvpList(int time) { for (int i = 0; i < CellList.Count; ++i) { rewardGrid.RemoveChild(CellList[i].transform); CellList[i].transform.parent = null; CellList[i].gameObject.SetActive(false); CellPoolList.Add(CellList[i]); } CellList.Clear(); int len = PvpRewardData.metaData.Values.Count; int num = 0; for (int i = len; i >= 1; i--) { num++; PvpRewardData p = PvpRewardData.metaData[i]; if (p == null || p.id_ == 0) { continue; } GameObject objCell = null; if (CellPoolList.Count > 0) { objCell = CellPoolList[0]; CellPoolList.Remove(objCell); } else { objCell = Object.Instantiate(listCell.gameObject) as GameObject; } objCell.transform.parent = rewardGrid.transform; objCell.gameObject.GetComponent <ArenaRewardCellUI>().rankLab.text = p.rankName_; //.min_ + "-" + p.max_; objCell.gameObject.GetComponent <ArenaRewardCellUI>().rankImg.gameObject.SetActive(true); objCell.gameObject.GetComponent <ArenaRewardCellUI>().fenLab.gameObject.SetActive(false); objCell.gameObject.GetComponent <ArenaRewardCellUI>().rankImg.spriteName = "py_" + num; //p.id_; if (time == 1) { objCell.gameObject.GetComponent <ArenaRewardCellUI>().PvPDayReward(p.day_); } else { objCell.gameObject.GetComponent <ArenaRewardCellUI>().PvPDayReward(p.times_); } objCell.SetActive(true); objCell.transform.localScale = Vector3.one; CellList.Add(objCell); } rewardGrid.Reposition(); }