/// <summary> /// 给排行榜添加一个元素 /// </summary> /// <param name="rankName">Rank name.</param> /// <param name="name">Name.</param> /// <param name="value">Value.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public void AddRankNode(string rankName, string name, object value) { L_RankData rankData = RootData.FindChild(rankName); if (rankData == null) { Debug.LogWarning("排行榜[" + rankName + "]尚未创建!"); return; } if (rankData.GetValue <string>() != value.GetType().ToString()) { Debug.LogWarning("排行榜[" + rankName + "]数据类型[" + rankData.Value + "],与添加的数据[" + name + "]类型[" + value.GetType() + "]不一致!"); return; } L_RankData data = rankData.FindChild(name); if (data == null) { data = rankData.CreatChildData(name, value); } else { data.Value = value; } }
// 获得数据节点 public IDataNode GetRankData(string rankname, bool isOrder = true) { L_RankData rankData = RootData.FindChild(rankname); OrderRank(rankData, isOrder); // 排序 return((IDataNode)rankData); }
/// <summary> /// Clears the data. /// </summary> public void ClearData(string name) { // 清理排行榜 LoadRank(name); RootData.FindChild(name).ClearChildren(); SaveTheRank(name); }
/// <summary> /// 存储数据 /// </summary> /// <param name="rankname">排行榜名.</param> /// <param name="isOrder">If set to <c>true</c> 正序/逆序.</param> public void SaveTheRank(string rankname, bool isOrder = true) { L_RankData rankData = RootData.FindChild(rankname); OrderRank(rankData, isOrder); // 排序 if (rankData != null) { XmlTool.SaveData <L_RankData>(rankData, FilePath + rankname); } }
/// <summary> /// 加载排行榜(覆盖当前排行榜) /// </summary> /// <param name="rankname">Rankname.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public void LoadRank(string rankname) { // 覆盖 L_RankData rankData = RootData.FindChild(rankname); if (rankData == null) { rankData = RootData.CreatChildData(rankname, "none"); } else { rankData.ClearChildren(); } XmlTool.LoadDataWihtPath <L_RankData>(ref rankData, FilePath + rankname); }