public void ShowAchievementsUI(Action _onCompletion) { // Check if user has logged in if (!VerifyUser()) { if (_onCompletion != null) { _onCompletion(); } return; } // Application needs to be in play mode if (!Application.isPlaying) { DebugPRO.Console.LogError(Constants.kDebugTag, "[GameServices] Available in play mode only."); if (_onCompletion != null) { _onCompletion(); } return; } // Gather data required to display properties Dictionary <EGCAchievementDescription, EGCAchievement> _gcAchievementMap = new Dictionary <EGCAchievementDescription, EGCAchievement>(); foreach (EGCAchievementDescription _gcAchievementDesc in m_achievementDescriptionList) { string _gcDescriptionID = _gcAchievementDesc.Identifier; EGCAchievement _gcAchievement = m_achievementsList.FirstOrDefault(_curAchievement => _curAchievement.Identifier.Equals(_gcDescriptionID)); // Add each entry _gcAchievementMap.Add(_gcAchievementDesc, _gcAchievement); } // Show UI if (m_gameCenterUI == null) { CreateGameCenterUIInstance(); } m_gameCenterUI.ShowAchievementUI(_gcAchievementMap, _onCompletion); }
public void ShowAchievementsUI() { // Check if user has logged in if (!VerifyUser()) { OnShowAchievementViewFinished(Constants.kGameServicesUserAuthMissingError); return; } // Application needs to be in play mode if (!Application.isPlaying) { OnShowAchievementViewFinished("The operation could not be completed because view is available only in play mode."); return; } // Gather data required to display properties Dictionary <EGCAchievementDescription, EGCAchievement> _gcAchievementMap = new Dictionary <EGCAchievementDescription, EGCAchievement>(); foreach (EGCAchievementDescription _gcAchievementDesc in m_achievementDescriptionList) { string _gcDescriptionID = _gcAchievementDesc.Identifier; EGCAchievement _gcAchievement = m_achievementsList.FirstOrDefault(_curAchievement => _curAchievement.Identifier.Equals(_gcDescriptionID)); // Add each entry _gcAchievementMap.Add(_gcAchievementDesc, _gcAchievement); } // Show UI if (m_gameCenterUI == null) { CreateGameCenterUIInstance(); } m_gameCenterUI.ShowAchievementUI(_gcAchievementMap, () => { // Invoke handler OnShowAchievementViewFinished(null); }); }