private IEnumerator GetPictureListGetHighScoreList() { for (int i = 0; i < _userHighScoreList.Count; i++) { _isGettingPicture = true; _currentUserHighScore = _userHighScoreList[i]; GetPicture(_currentUserHighScore.Id, OnGetPictureOfGetHighScoreListCB); while (_isGettingPicture) { yield return(new WaitForEndOfFrame()); } } if (_onGetHighScoreListCB != null) { _onGetHighScoreListCB(_userHighScoreList, "Success"); } }
private void OnGetFriendListOfHighScoreListCB(List <FBUserInfo> userInfoList, string message) { if (userInfoList != null) { _userHighScoreList = new List <FBUserHighScore>(); for (int i = 0; i < userInfoList.Count; i++) { FBUserHighScore userHighScore = new FBUserHighScore(); userHighScore.Id = userInfoList[i].id; userHighScore.Name = userInfoList[i].name; for (int j = 0; j < _userScoreList.Count; j++) { if (userHighScore.Id == _userScoreList[j].user.id) { userHighScore.Score = _userScoreList[j].score; userHighScore.IsPlayedApp = true; break; } } _userHighScoreList.Add(userHighScore); } // friend list dont contain current user, so need to add manualy for (int i = 0; i < _userScoreList.Count; i++) { if (_userScoreList[i].user.id == CurrentUser.User.id) { FBUserHighScore userHighScore = new FBUserHighScore(); userHighScore.Id = _userScoreList[i].user.id; userHighScore.Name = _userScoreList[i].user.name; userHighScore.IsPlayedApp = true; userHighScore.Score = _userScoreList[i].score; _userHighScoreList.Add(userHighScore); break; } } _userHighScoreList.Sort((x1, x2) => { if (x1.Score > x2.Score) { return(-1); } if (x1.Score < x2.Score) { return(1); } return(string.Compare(x1.Name, x2.Name)); }); if (_isDownloadPictureOfEachUser) { _getPictureListRef = GetPictureListGetHighScoreList(); StartCoroutine(_getPictureListRef); } else { if (_onGetHighScoreListCB != null) { _onGetHighScoreListCB(_userHighScoreList, "Success"); } } } else { if (_onGetHighScoreListCB != null) { _onGetHighScoreListCB(null, message); } } }