// UGCHandle_t m_hUGC internal static LeaderboardEntry From(LeaderboardEntry_t e, int[] detailsBuffer) { var r = new LeaderboardEntry { User = new Friend(e.SteamIDUser), GlobalRank = e.GlobalRank, Score = e.Score, Details = null }; if (e.CDetails > 0) { r.Details = detailsBuffer.Take(e.CDetails).ToArray(); } return(r); }
internal async Task <LeaderboardEntry[]> LeaderboardResultToEntries(LeaderboardScoresDownloaded_t r) { if (r.CEntryCount <= 0) { return(null); } var output = new LeaderboardEntry[r.CEntryCount]; var e = default(LeaderboardEntry_t); for (int i = 0; i < output.Length; i++) { if (SteamUserStats.Internal.GetDownloadedLeaderboardEntry(r.SteamLeaderboardEntries, i, ref e, detailsBuffer, detailsBuffer.Length)) { output[i] = LeaderboardEntry.From(e, detailsBuffer); } } await WaitForUserNames(output); return(output); }