swift - 每 10 分钟为游戏添加一次生命,就像 candy crush

标签 swift sprite-kit nstimeinterval

<分区>

我用 Swift 在 spritekit 中制作了一个游戏,即使在游戏关闭时也想像 candy crush 一样增加生命。

我必须使用 NStimeinterval 还是在游戏停止时停止?

最佳答案

对于后台执行的可能性和需求,我建议您阅读 App Programming Guide: Background Execution .

但为什么即使应用程序未运行,也需要每 10 分钟处理一次?

下面的想法呢:将当前系统时间保存在NSUserDefaults中当应用程序停止运行时(即在 UIApplication.applicationWillResignActiveUIApplication.applicationDidEnterBackground 中)。当应用程序再次激活时(或者如果用户已完全终止它,甚至从头开始)从 NSUserDefaults 中读取该时间戳,计算已经过去了多少个 10 分钟间隔,并将其添加到您的实时计数器中。

这样就不需要采取后台执行的所有复杂步骤。

只是一个想法。

关于swift - 每 10 分钟为游戏添加一次生命,就像 candy crush,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27317652/

相关文章:

ios - 在 AppDelegate 的 UI Bootstrap 代码中选择 Root View Controller (与 viewDidLoad 相比)

ios - Swift 如何使用容器 View 和分段控件

ios - 使用 Swift 使 SKScene 填满整个屏幕

ios - 在 ios 中分别在一个 nsdate 中设置日期和时间时出现错误时间

ios - 如何获得屏幕上显示的图像的准确持续时间计时器?

swift - 尝试删除多个(以编程方式添加的)单元格后 CollectionView 崩溃

ios - 如何快速裁剪给定角度的图像

ios - 框架的接触方法

swift - 多个纹理之间的淡入淡出,SpriteKit

ios - 计算 UISlider 值更改时更新的辅助功能标签的时间的正确方法?