gpt4 book ai didi

iphone - iOS 排行榜游戏中心

转载 作者:行者123 更新时间:2023-12-01 19:20:59 26 4
gpt4 key购买 nike

我正在尝试将排行榜与我的 iOS 游戏集成。

我看到 GKScore 类(class)需要一个类别,但是,我只有一个排行榜。我在任何地方都看不到字段类别。我有一个排行榜 ID、一个排行榜引用名称和一个正在本地化的排行榜名称。如果有的话,我应该使用哪一个?

我正在提交两个帐户的分数,但是,我从未在排行榜上看到任何分数。我正在使用模拟器。

最佳答案

首先,不要使用模拟器。如果可以,请使用设备,因为向游戏中心提交分数等许多功能在模拟器上不起作用。您是否尝试记录尝试的分数报告返回的错误?这将为您提供有关 future 困难的更多详细信息。要回答您的问题,请使用排行榜 ID 作为类别。这是一个示例函数,您可以使用它来提交类别的分数:

在头文件中定义 isGameCenterAvailable bool 并使用以下代码设置其值:

Class gameKitLocalPlayerClass = NSClassFromString(@"GKLocalPlayer");        
bool isLocalPlayerAvailable = (gameKitLocalPlayerClass != nil);

// Test if device is running iOS 4.1 or higher
NSString* reqSysVer = @"4.1";
NSString* currSysVer = [[UIDevice currentDevice] systemVersion];
bool isOSVer41 = ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending);

isGameCenterAvailable = (isLocalPlayerAvailable && isOSVer41);
NSLog(@"GameCenter available = %@", isGameCenterAvailable ? @"YES" : @"NO");

使用此方法提交分数:
-(void) submitScores:(int64_t)score category:(NSString*)category {

if (!isGameCenterAvailable){
return;
}

GKScore* gkScore = [[[GKScore alloc] initWithCategory:category] autorelease];
gkScore.value = score;

[gkScore reportScoreWithCompletionHandler:^(NSError* error) {
bool success = (error == nil);
if(!success){
NSLog(@"Error Reporting High Score: %@", [[error userInfo] description]);
}
[delegate onScoresSubmitted:success];
}];
}

这段代码是由 Steffen Itterheim 编写的,他写了一本关于 cocos2d 游戏开发的好书。这是他和他的许多其他产品的链接: http://www.learn-cocos2d.com/

关于iphone - iOS 排行榜游戏中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10369033/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com