2010-11-29 108 views
1

这是一个可能很愚蠢的问题。但是我将Game Center添加到了我的应用中,现在我也想添加成就。所以我在itunesconnect上创建了一个测试成绩并复制了这个方法:GKAchievement(游戏中心)展示?

- (void) reportAchievementIdentifier: (NSString*) identifier percentComplete: (float) percent { 
    GKAchievement *achievement = [[[GKAchievement alloc] initWithIdentifier: identifier] autorelease]; 
    if (achievement) 
    { 
    achievement.percentComplete = percent; 
    [achievement reportAchievementWithCompletionHandler:^(NSError *error) 
    { 
    if (error != nil) 
    { 
    // Retain the achievement object and try again later (not shown). 
    } 
    }]; 
    } } 

但是现在我该怎么做。我必须在哪里编写表示达成成就的代码?我必须在哪里编写代码,说明通过这样做达到了成就?

回答

5

如果您问如何向用户展示成就(即“获得成就!”),则完全取决于您。你的游戏必须以最好的方式实现视觉效果。

如果你只是需要一个快速简便的成绩显示,试试这个:

http://typeoneerror.com/blog/post/game-center-achievement-notification

+0

有没有从苹果的方式,显示达到的成就? – Leon 2010-11-29 20:55:09

0

使用GKAchievementin实例属性showsCompletionBanner显示系统成就旗帜给用户。

一个布尔值,指出在完成 成就时是否显示标题。

斯威夫特4

let achievement = GKAchievement(identifier: achievementId) 
achievement.percentComplete = 100.0 
achievement.showsCompletionBanner = true 

Objc

GKAchievement *achievement = [[GKAchievement alloc] initWithIdentifier: achievementId]; 
[achievement setPercentComplete:100.0]; 
[achievement setShowsCompletionBanner:YES];