【问题标题】:Apply a sequence of different SKActions to different SKNodes将一系列不同的 SKAction 应用于不同的 SKNode
【发布时间】:2017-07-13 06:49:26
【问题描述】:

我想创建一个 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.run(...)同时执行。

【问题讨论】:

    标签: ios swift sprite-kit


    【解决方案1】:

    您可以将代码块或函数作为操作运行(因为在 Swift 中闭包也是函数类型),因此您可以在 layer 中运行的操作数组中添加 SKAction.runBlock(moveSnake) 作为最后一个 SKAction

    然后在func moveSnake() {} 你可以运行你的动作来移动蛇。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-13
      • 1970-01-01
      • 2014-04-11
      • 1970-01-01
      • 2014-06-19
      • 2020-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多