OpenFeint成就百分比增量

时间:2011-04-07 20:06:20

标签: iphone partial openfeint achievements

我正在制作支持OpenFeint的iOS应用。 我已经设法让除了一项成就之外的所有成就都有效。这一项成就是部分完成的。

我的具体问题是我没有找到一个有效的解决方案,可以将当前成就百分比增加1%。

我发现了这个值(它应该是double):

double achievement12 = [OFAchievementService getPercentComplete:ach12Id 
                                                        forUser:[OpenFeint lastLoggedInUserID]];

但这会导致以下错误和警告:

  

“初始化时无法将'objc_object *'转换为'double'。

     

'OpenFeint'可能无法响应“+ lastLoggedInUserId”

     

'OFAchievementService'可能无法响应“+ getPercentComplete:forUser:”

实际的功能代码是:

    // Note: this should be moved into public API
   + (double) getPercentComplete:(NSString*)achievementId forUser:(NSString*)userId
    {
        sAlreadyAtLeastPartlyCompleteQuery.bind("achievement_definition_id", achievementId);
        sAlreadyAtLeastPartlyCompleteQuery.bind("user_id", userId);     
        sAlreadyAtLeastPartlyCompleteQuery.execute();
        float percentComplete = (double)    (sAlreadyAtLeastPartlyCompleteQuery.getDouble("percent_complete"));
    sAlreadyAtLeastPartlyCompleteQuery.resetQuery();
    return percentComplete;
    }

这是我在这个应用程序上要做的最后一件事,现在已经困扰了我几天。

2 个答案:

答案 0 :(得分:0)

确认NSSString成就ID是正确的,我认为它会返回int,而不是双倍。

Using OpenFeint to get current Achievement progression

答案 1 :(得分:0)

OpenFeint支持表示,由于安全问题,他们尚未集成该部分。

话虽如此,我现在已经使用了存储数据的文件,所以我可以稍后检索它(使用方程来隐藏当然的实际价值)