2017-08-28 3 views
2

私はゲームを作っていてノードをフェードアウトしますが、シーンから削除されたのか、それとも隠れているのか分かりません。私はまったく同じ場所に別のノードを追加したいと思いますし、お互いにノードを持ちたくないのです。SKAction.fadeOut(withDuration:2.0)はノードをシーンから削除するか、それとも単に「隠す」のですか?

let fadeOutAction = SKAction.fadeOut(withDuration: 2.0) 
nodeToFadeOut.run(fadeOutAction) 

これは完璧に機能しますが、ノードがシーンから削除されたかどうかわかりません。ここで

+1

後3まで低下しました。 –

+0

だから私はnode.removeFromParent()を実行する必要がありますか? – Stephanie

+1

シーンから削除する必要がある場合は、はい。 –

答えて

5

あなたは、この複数の方法を確認することができますが役に立つかもしれない何か:)

func fadeAndRemove(node: SKNode) { 
    let fadeOutAction = SKAction.fadeOut(withDuration: 2.0) 
    let remove  = SKAction.run({ node.removeFromParent }()) 
    let sequence  = SKAction.sequence([fadeOutAction, remove]) 
    node.run(sequence) 
} 

fadeAndRemove(node: myCoolSpriteNode) 

ですが、最も簡単なだけで、画面の右下にノード数を見ることである。

enter image description here

私のノード数は、その後、4で開始2秒:)それはまだあなたが文字通りシーンからそれを削除しない限りだ

+0

SKNodeの拡張 –

関連する問題