【问题标题】:Pausing game when app goes inactive - stopping timers issue当应用程序处于非活动状态时暂停游戏 - 停止计时器问题
【发布时间】:2015-02-15 18:18:58
【问题描述】:

所以我有一个使用不同计时器的游戏。这些计时器提供了关键的游戏功能,因此它们按预期工作是必然的。 当应用程序进入非活动状态时,我可以使用

scene.paused = true

这会暂停除计时器之外的所有操作。我必须自己使每个计时器无效。然后当应用程序启动时,我需要再次创建所有这些计时器。不幸的是,这打破了游戏的设计流程。例如,我的计时器每 5 秒触发一次事件。当计时器应在 1 秒内触发事件时,应用程序将处于非活动状态。如果我使其无效然后再次创建此计时器将在 5 秒内触发一个事件。 是的,我可以跟踪每个计时器的当前时间,但这似乎很麻烦(我有很多不同的 SKScene 和不同的计时器)

这是不可接受的,所以我正在寻找更好的解决方案。首先想到的是使用 SKAction.waitForDuration 而不是计时器。 因此,如果这是一个好的解决方案,我需要您的建议。我可以通过这种方式正确暂停 SKActions 吗?

【问题讨论】:

    标签: ios swift nstimer


    【解决方案1】:

    看来这毕竟是个好主意。迁移到 SKAction 让暂停变得容易。

    【讨论】:

      猜你喜欢
      • 2018-03-27
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      • 2014-12-07
      • 2017-07-28
      • 2016-01-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多