private void PrintAchievementInfo(UM_iAchievement achievement) { UM_Logger.Log("------------------------------------------------"); UM_Logger.Log("achievement.Identifier: " + achievement.Identifier); UM_Logger.Log("achievement.Name: " + achievement.Name); UM_Logger.Log("achievement.State: " + achievement.State); UM_Logger.Log("achievement.Type: " + achievement.Type); UM_Logger.Log("achievement.TotalSteps: " + achievement.TotalSteps); UM_Logger.Log("achievement.CurrentSteps: " + achievement.CurrentSteps); }
private void Increment(UM_iAchievement achievement, int numSteps, Action <SA_Result> callback) { ISN_GKAchievement iosAchievement = new ISN_GKAchievement(achievement.Identifier); int progress = achievement.CurrentSteps + numSteps; iosAchievement.PercentComplete = progress; iosAchievement.Report((result) => { if (result.IsSucceeded) { IncrementLocally(achievement.Identifier, numSteps); } callback.Invoke(result); }); }
public void Increment(string achievementId, int numSteps, Action <SA_Result> callback) { //We need to caclulate PercentComplete. //Let's see if we have an achivement info already UM_iAchievement achievement = GetAchievementById(achievementId); if (achievement != null) { Increment(achievement, numSteps, callback); } else { Load((result) => { if (result.IsSucceeded) { //It should be cached at this point already achievement = GetAchievementById(achievementId); if (achievement == null) { ISN_GKAchievement iSN_achievement = new ISN_GKAchievement(achievementId); var iosAchievement = new UM_IOSAchievement(iSN_achievement); SetAchievementCahce(iosAchievement); achievement = iosAchievement; } Increment(achievement, numSteps, callback); } else { var error = new SA_Error(100, "Wasn't able to load achievement with id: " + achievementId); callback.Invoke(new SA_Result(error)); } }); } }