我想创建一系列 SKAction,每个 SKAction 都针对不同的 SKSpriteNode。我想要淡出我的 layer
节点,将其从父级中删除,等待 3 秒,然后为我的 snake
节点启动 move
SKAction。这是一些代码:
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 同时执行。运行(...)
。
最佳答案
您可以将代码块或函数作为操作运行(因为在 Swift 中闭包也是函数类型),因此您可以添加 SKAction.runBlock(moveSnake)
作为最后一个 SKAction
在 layer
中运行的操作数组上。
然后在 func moveSnake() {}
中,您可以运行操作来移动蛇。
关于ios - 将一系列不同的 SKAction 应用于不同的 SKNode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45068551/