Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sprite kit Spritek中的暂停按钮点击几下即可恢复游戏_Sprite Kit_Swift3 - Fatal编程技术网

Sprite kit Spritek中的暂停按钮点击几下即可恢复游戏

Sprite kit Spritek中的暂停按钮点击几下即可恢复游戏,sprite-kit,swift3,Sprite Kit,Swift3,我已经阅读了一些关于在SpriteKit中暂停场景的问题/答案,但没有一个能解决我遇到的问题 我在游戏场景中有一个暂停按钮。Z位置比场景中的任何其他SKSpriteNode都高得多。第一个问题是,有时需要2或3次点击来暂停场景,但主要问题是要恢复游戏,有时只需点击一次就可以正常工作,但有时,点击它会前进2-3帧,有时甚至需要点击5次才能完全恢复游戏 下面是我使用的暂停按钮代码,它位于我使用Swift 3的触摸移动功能中。你们能提供一些建议来改进这个代码并修复这个小故障吗?谢谢你的帮助

我已经阅读了一些关于在SpriteKit中暂停场景的问题/答案,但没有一个能解决我遇到的问题

我在游戏场景中有一个暂停按钮。Z位置比场景中的任何其他SKSpriteNode都高得多。第一个问题是,有时需要2或3次点击来暂停场景,但主要问题是要恢复游戏,有时只需点击一次就可以正常工作,但有时,点击它会前进2-3帧,有时甚至需要点击5次才能完全恢复游戏

下面是我使用的暂停按钮代码,它位于我使用Swift 3的触摸移动功能中。你们能提供一些建议来改进这个代码并修复这个小故障吗?谢谢你的帮助

        let nodeUserTapped = atPoint(pointOfTouch)

        if nodeUserTapped.name == "PauseButton" {

            if (self.isPaused == true) {
                self.isPaused = false
                physicsWorld.speed = 1
            } else {
                self.isPaused = true
                physicsWorld.speed = 0
            }

        }

通常,您应该使用
触摸开始
简单地使用“按下的按钮”纹理设置按钮动画,然后将代码放入
触摸结束
以确保在用户松开按钮内的手指时运行它。只有当手指在屏幕上至少滑动一点时,才会运行您在触摸移动中编写的代码。

通常您应该使用触摸开始简单地用“按下的按钮”纹理设置按钮动画,然后将代码放入
touchesend
,确保在用户松开按钮内的手指时运行代码。只有当手指在屏幕上滑动至少一点点时,才会运行您在触摸移动中编写的代码