public void SetRanking(RankingPacket packet) { for (int i = 0; i < RankingPacket.RankingCount; i++) { rankingsTMPro[i].text = string.Format(rankingsTMPro[i].text, packet.Ranks[i], packet.Scores[i]); } }
public void UpdateRanking(RankingPacket packet, int totalScore) { int tmpIndex = 0; bool isChanged = false; for (int i = 0; i < RankingPacket.RankingCount; i++) { if (!isChanged && packet.Scores[i] <= totalScore) { rankingsTMPro[i].text = string.Format(rankingsTMPro[i].text, packet.Ranks[i], totalScore); isChanged = true; changedIndex = i; } else { rankingsTMPro[i].text = string.Format(rankingsTMPro[i].text, packet.Ranks[i], packet.Scores[tmpIndex]); tmpIndex++; } } if (!isChanged) { changedIndex = -1; } }
private void Start() { query = new NCMBQuery <NCMBObject>("Ranking"); query.OrderByDescending("score"); query.Limit = RankingPacket.RankingCount; query.FindAsync((List <NCMBObject> objList, NCMBException e) => { Packet = new RankingPacket(); for (int i = 0; i < RankingPacket.RankingCount; i++) { Packet.Ranks[i] = 0; Packet.Scores[i] = 0; } if (e != null) { ResultManager.Instance.SetRanking(Packet); } else { int rank = 0; foreach (var obj in objList) { rank++; int score = System.Convert.ToInt32(obj["score"]); Packet.Ranks[rank - 1] = rank; Packet.Scores[rank - 1] = score; } //ResultManager.Instance.SetRanking(Packet); } }); }