2011-04-05 66 views
0

那麼,我已經註冊了排行榜和成就(僅用於測試目的)。我使用GameCenterManager.h/.m和AppScoreValue.h發送成就到GameCenter問題!

我的排行榜正常工作時會正常收到所有分數,並將它們排列整齊,但成績不會授予玩家。

我想一個例子展示瞭如何報道的成就,我想這樣的:

我的觀點做負載方法是這樣的:

-(void)viewDidLoad{ 
    [GKAchievement loadAchievementsWithCompletionHandler:^(NSArray *achievements, NSError *error) { 
    if (error != nil) 
    { 
     NSLog(@"ACHIEVEMENTS WERE NOT LOADED"); 
    } else { 
     NSLog(@"ACHIEVEMENTS WERE LOADED"); 
    } 

    if (achievements != nil) 
    { 
     NSLog(@"THERE ARE ACHIVEMENTS"); 
    } else { 
     NSLog(@"THERE ARE NO ACHIVEMENTS %@", achievements); 
    } 
}]; 

,這裏是我的成績報告方法:

- (IBAction)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). 
      } 
     }]; 
    } 

}

+0

歡迎來到StackOverflow!你在哪裏報告分數?我看不到你在這裏的任何地方調用該方法。 – Moshe 2011-04-05 18:35:49

+0

我該怎麼辦?我真的迷失在這個代碼中。 – Felipe 2011-04-05 19:54:48

回答

1

當您舉報成就時,柯本:

[self reportAchievementIdentifier:@"com.yourapp.yourachievement" percentComplete:100.0]; 

(你要替換,不管你用你的遊戲中心標識符標識。)

我建議看this documentation蘋果。它包含一個完整的教程,介紹如何在你的應用中使用成就。

基本的想法是,你的應用程序報告你的用戶完成成就的百分比。請注意,成就並不總是立即傳播。

1
GKAchievement *achievement = 
    [[GKAchievement alloc] initWithIdentifier: identifier]; 
achievement.showsCompletionBanner = YES; 

就是這樣!