2017-07-12 17 views
2

それぞれ異なるSKSpriteNode用のSKActionsのシーケンスを作成したいとします。 layerノードを消して、親から削除して3秒待ってからsnakeノードのmove SKActionを開始してください。ここではいくつかのコードがあります:異なるSKActionのシーケンスを異なるSKNodeに適用する

func startGame() { 
    layer.run(SKAction.sequence([ 
     SKAction.fadeAlpha(to: 0, duration: 1), 
     SKAction.removeFromParent(), 
     SKAction.wait(forDuration: 1), 
    ])) 
    //Here move the snake node 
} 

問題は、私はコメントの場所でsnake.run(SKAction.move(...))を追加する場合、それはlayer.run(...)と同時に実行されます、です。

答えて

4

(スウィフト、クロージャ内の型を兼用しているため)あなたはlayerで実行するアクションの配列に最後SKActionとしてSKAction.runBlock(moveSnake)を追加できるようにするには、アクションとしてコードや機能のブロックを実行することができます。

次に、func moveSnake() {}で、あなたの行動を実行してヘビを動かすことができます。

関連する問題