2017-01-13 8 views
0

SpriteKitでシーンを一時停止することについていくつかの質問/回答がありましたが、私は問題を解決できません。SpriteKitの一時停止ボタンでゲームを再開するにはいくつかのタップが必要です

私はゲームのシーンに一時停止ボタンがあります。 Zポジションは、シーン内の他のSKSpriteNodeよりもはるかに高いです。最初の問題は、シーンを一時停止するのに2〜3タップかかることがありますが、MAINの問題はゲームを再開することです。時には1タップだけで動作しますが、タップすると2〜3フレーム進むゲームを完全に再開するために5回もタップする必要があります。

以下は私の一時停止ボタンに使用しているコードで、Swift 3を使用して私のtouchesMoved機能の中にあります。このコードを改善してこの不具合を修正する提案はありますか?ご協力いただきありがとうございます。

 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 
      } 

     } 

答えて

2

通常は、ユーザーがボタンの内側に指を離したときにそれを実行することを確認するtouchesEndedにあなたのコードを入れて、テクスチャ「ボタンを押された」とのボタンをアニメーション化するだけでtouchesBeganを使用する必要があります。 touchesMovedで書いたコードは、指が画面上で少なくとも少し滑るときにのみ実行されます。

関連する問題