2012-07-20 48 views
2

我試過谷歌它,但我找不到合法的。我已經設立了遊戲中心,只需要獲得排行榜並取得成就。任何建議都會很好。謝謝。另外,因爲我已將我的分數保存到一個字符串,請問我是如何將它放在排行榜中的?任何教程如何使排行榜和成就在cocos2d

回答

1

將排行榜委託添加到您的圖層類。

@interface MyMainMenu : CCLayer<GKLeaderboardViewControllerDelegate> 

根據您的需求顯示排行榜。

-(void)displayLeaderboard 
{ 
    GKLeaderboardViewController *leaderboardViewController = [[GKLeaderboardViewController alloc] init]; 
    leaderboardViewController.leaderboardDelegate = self; 

    AppController *app = (AppController*) [[UIApplication sharedApplication] delegate]; 

    [app.navController presentModalViewController:leaderboardViewController animated:YES]; 
} 

添加這兩種領導委員會的代表發揮作用

#pragma mark GameKit delegate 

-(void) achievementViewControllerDidFinish:(GKAchievementViewController *)viewController 
{ 
    AppController *app = (AppController*) [[UIApplication sharedApplication] delegate]; 
    [app.navController dismissModalViewControllerAnimated:YES]; 
} 

-(void) leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController 
{ 
    AppController *app = (AppController*) [[UIApplication sharedApplication] delegate]; 
    [app.navController dismissModalViewControllerAnimated:YES]; 
} 

要提交評分:

[[GameCenterManager sharedGameCenterObject] reportScore:score forCategory: kLeaderboardID]; 

使用GameCenterManager.m類從GKTapper樣品(見你的蘋果SDK示例)。

下面是代碼從優先獲得價值: //要想從PREF

int highScore = [[[NSUserDefaults standardUserDefaults] objectForKey:@"HighScore"] intValue ]; 
+1

omg如果這個工程我會很高興。 – 2012-07-20 07:56:25

+0

我在4-5場比賽中使用了相同的。所有工作:) – Guru 2012-07-20 07:57:07

1

保存的值上有遊戲中心編程整整一章,與示例代碼,在Itterheim &勒夫的書「學習iOS5的Cocos2d遊戲開發「。還有Strougo的「學習Cocos2d」& Wenderlich有一個工作代碼章節。