我设置了通过游戏第一关的成就,它可以工作,但是当我重玩关卡并通过它时,它再次显示通知横幅,我该如何防止这种情况发生?
问问题
1490 次
2 回答
11
使用此方法提交成就:
-(void) reportAchievementWithID:(NSString*) achievementID {
[GKAchievement loadAchievementsWithCompletionHandler:^(NSArray *achievements, NSError *error) {
if(error) NSLog(@"error reporting ach");
for (GKAchievement *ach in achievements) {
if([ach.identifier isEqualToString:achievementID]) { //already submitted
return ;
}
}
GKAchievement *achievementToSend = [[GKAchievement alloc] initWithIdentifier:achievementID];
achievementToSend.percentComplete = 100;
achievementToSend.showsCompletionBanner = YES;
[achievementToSend reportAchievementWithCompletionHandler:NULL];
}];
}
于 2012-08-05T22:01:33.957 回答
-2
保存用户已经通过关卡NSUserDefaults
,然后当用户通过关卡检查NSUserDefaults
你的钥匙,如果它在那里,那么不要为游戏中心做成就代码。
于 2012-08-01T20:28:49.470 回答