我很抱歉这个问题听起来很“愚蠢”,但这是我第一次使用SpriteKit,特别是在视频游戏上。
这是我的问题:我正在创建游戏的原型,我想实现一个“暂停”系统。我已经成功地暂停了元素physicsWorld.speed = 0
,阻止了计时器等。我现在需要的是实现以下目标:
带有一些按钮的黑色叠加图像。每个场景都已使用编辑器.sks
创建,我也创建了pauseScene.sks
。我的问题是:我做对了吗?有什么方法可以覆盖多个场景,或者我应该采用其他方法?
一个简单的答案是您正在寻找SKView.isPaused
属性,但这并不完全全面。设置为true时,它将暂停SKAction和物理处理,但不会停止场景的update
方法或其他可能的交互。
更完整的答案是,暂停可能是您可能希望提供的自定义实现,以具有特定游戏所需的交互和连续动画的正确组合。您可以将SKView.isPaused
用作该概念中的工具,只是知道开和关之间没有粒度。
[从那里,您将要添加一个具有较高zPosition的节点以用于ui,或者在您要定位的任何环境(iOS的UIView / macOS的NSView等)上添加视图处理您希望玩家进行的任何暂停互动。