解锁成就-GameCenter iPhone
我正试图在我为iPhone制作的游戏中解锁一项成就,但没有成功 从苹果自己的Gktaper项目示例演示游戏中心代码中,我已将GameCenterManager.h和.m以及AppSpecificValues.h文件复制到我的项目中。我已经成功加载了成绩和排行榜供查看 然而,我无法弄清楚或弄清楚如何真正解锁一项成就。有人能指出如何使用GameCenterManager或不使用GameCenterManager如何解锁成就吗 谢谢解锁成就-GameCenter iPhone,iphone,gamekit,game-center,achievements,unlock,Iphone,Gamekit,Game Center,Achievements,Unlock,我正试图在我为iPhone制作的游戏中解锁一项成就,但没有成功 从苹果自己的Gktaper项目示例演示游戏中心代码中,我已将GameCenterManager.h和.m以及AppSpecificValues.h文件复制到我的项目中。我已经成功加载了成绩和排行榜供查看 然而,我无法弄清楚或弄清楚如何真正解锁一项成就。有人能指出如何使用GameCenterManager或不使用GameCenterManager如何解锁成就吗 谢谢 - (void) reportAchievementIden
- (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).
}
}];
}
}
按如下方式调用此方法:
[self reportAchievementIdentifier:indentifier percentComplete:percent];
如果您只想解锁成就,请调用以下命令:
[self reportAchievementIdentifier:indentifier percentComplete:100.0];
您可以使用浮动来计算成就的百分比,如果用户达到100,成就将被解锁
您也可以这样做:
[self reportAchievementIdentifier:indentifier percentComplete:((actualpoints/neededPoints)*100.0)];
neededPoints指解锁此成就所需的积分。例如:
实际点数=300;
所需点数=600
它计算:300/600=0.5*100=50%顺便说一句,如果您设置percentComplete=100,“completed”属性并不总是设置为YES,至少不在同一会话中。我花了一段时间调试为什么我的游戏会多次获得成就,即使完成百分比设置为100