【发布时间】:2014-05-07 03:47:51
【问题描述】:
这似乎是一个基本概念,但实际上没有好的答案。
我目前有一个非常基本的设置,在我的游戏场景中,我有一个enum gameState,目前是inGame 或gamePaused。
我已经设置好按钮,按下它可以切换gameState。
然后,为了让它工作,我有两种单独的更新方法:一种用于gamePaused,一种用于inGame。
这适用于我 95% 的游戏,因为我的游戏中的更新可以很容易地启动和停止,没有任何问题。但有些问题我无法解决。
首先是行动。我将SKActions 用于我的一些项目(一些移动、缩放、褪色......),这种方法不会暂停它们。这在某些方面可能是灾难性的。其次,这不处理粒子、物理和其他一些与我的更新方法没有直接关联的东西。
我唯一的线索是self.view.paused = YES,但这也行不通。
首先,这确实解决了我的动作、粒子和物理问题……有点。但是This question 表明SKActions 实际上并没有因此而暂停,而是实际上完全停止了。这是真的?如果是这样,那么它也不会顺利进行,因为我的行为不正常。
此外,暂停视图似乎就像它所说的那样:停止一切。一切。新手问题在这里,但我应该如何让任何代码在那时运行?这一切都被切断了。这是我需要subViews 的地方吗?我从未使用过subView,但在这种情况下,这听起来像是我想要的。
简而言之,我有很多未解决的问题,我不知道如何继续。我希望在Sprite Kit 中有一些暂停的“标准程序”,但是暂停视图暂停操作我真的不知道从哪里开始。
我应该放弃使用操作吗?我的暂停subView 的想法听起来好吗?
我不想喋喋不休,我只想知道你是如何在你的普通Sprite Kit 项目中暂停的。应要求提供其他信息。
【问题讨论】:
-
1.尝试将动作速度设置为 0.0。 2.尝试将场景暂停设置为YES。 3.尝试将self.view.paused设置为YES 4.尝试这三者的组合。
标签: ios objective-c sprite-kit