iOS游戏的每日奖励

时间:2013-06-24 14:38:42

标签: ios objective-c cocos2d-iphone

我正在制作游戏,我想实施每日奖励制度;为了每天给一些硬币。 该系统类似于许多已知的游戏,例如Angry Birds FriendsShadowgun: Deadzone。每天,我第一次打开应用程序,它给了我5个硬币。然后第二天给了我超过5个硬币,依此类推,直到最后一天给我一个项目。

事情是,我不知道从哪里开始,如何开始。有没有可用的库或实现它的简单方法?我从未开发过日期(例如使用NSDate),这就是为什么我不知道该怎么做。任何的想法?谢谢!

3 个答案:

答案 0 :(得分:3)

您实际上并不需要实现服务器。您需要做的就是找到您信任的显示日期的网站。每次加载应用程序时,您都可以拨打该网站并解析以查找日期。然后,您将此日期保存在NSUserDefaults中,并在每次应用打开时进行比较

修改

您需要找到一个显示当前时间的网页(搜索谷歌查找一个)然后使用您的代码,您将需要解析该页面以获取包含日期的字符串。在appDelegate内部,一旦你得到字符串

,你就会想要做一些事情
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd hh:mm:ss a"];
NSDate *myDate = [df dateFromString: myDateAsAStringValue];

此时您需要将其保存到NSUserDefaults中,所以

[[NSUserDefaults standardUserDefault] setObject:myDate forKey:@"lastDatePlayed"];

你还应该添加一些逻辑来将它与上一个日期进行比较......但这不应该太难以弄明白

答案 1 :(得分:2)

您需要在服务器上实现此功能,并与用户上次玩游戏时进行比较。如果您使用设备的日期NSDate *date = [NSDate date];,则用户只需更改其设备上的日期,并将其视为您的游戏,就好像它是新的一天。

答案 2 :(得分:2)

我这样做(不是针对游戏,而是针对常规应用,关于这一点没有区别)

我在服务器端这样做,几乎我有一个通过http与应用程序通信的Web服务器(以json格式发送和接收数据),我在两边都有json解析器。

在服务器端,我有一个正在运行的服务,每天开始(比较小时!)运行我的代码来更新点到我的服务器数据库

我的应用程序的公开Web服务当然是检索数据库中的计算数据 并在json中提供它

它的工作方式相同