所以我正在制作游戏并淡出一个节点,但我不知道它是从场景中移除还是只是隐藏了。我想在完全相同的位置添加另一个节点,但我不想让节点相互重叠。
let fadeOutAction = SKAction.fadeOut(withDuration: 2.0)
nodeToFadeOut.run(fadeOutAction)
这很完美,但我不知道节点是否已从场景中移除。
最佳答案
这里有一些你可能会觉得有用的东西:)
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)
您可以通过多种方式验证这一点,但最简单的方法是只查看屏幕右下角的节点数:
我的节点数从 4 开始,然后在 2 秒后下降到 3 :)
关于ios - SKAction.fadeOut(withDuration : 2. 0) 是从场景中移除节点还是仅将其移除 "hides"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45915387/