public List <LeaderBoardRowData> GetOrderedRaws(IReadOnlyList <PlayerStats> statsList, System.Func <PlayerStats, int> selector) { var list = new List <LeaderBoardRowData>(statsList.Count); for (int i = 0; i < statsList.Count; ++i) { var data = new LeaderBoardRowData() { Name = statsList[i].Name, Value = selector(statsList[i]), }; list.Add(data); } ; list.Sort(LeaderBoardRowDataDecreaseComparer.Instance); for (int i = 0; i < list.Count; ++i) { list[i].Number = i + 1; } return(list); }
public void AddRow(LeaderBoardRowData data) { var row = ObjectPool.Spawn(rowTemplate); row.transform.SetParent(container); row.Show(data); rows.Add(row); }
public void Show(LeaderBoardRowData data) { number.text = data.Number.ToString(); leaderName.text = data.Name; value.text = data.Value.ToString(); }