gpt4 book ai didi

swift - 如何从 sks 文件加载节点,然后应用场景编辑器中定义的 Action

转载 作者:搜寻专家 更新时间:2023-11-01 07:04:10 37 4
gpt4 key购买 nike

我有两个 sks 文件,一个包含节点,另一个包含 Action ,这两个文件都是在场景编辑器中创建的。我想加载节点并将它们添加到另一个节点,然后对它们应用操作,例如:

override func sceneDidLoad() {

let heroScene = SKScene(fileNamed: "Hero")
let head = heroScene?.childNode(withName: "HeroHead") as! SKSpriteNode
let testAction = SKAction(named: "HeroTestAction") as! SKAction
let loop = SKAction.repeatForever(testAction)
let hero = SKSpriteNode(color: SKColor.white.withAlphaComponent(0) , size: CGSize(width: 50, height: 250))
let body = SKSpriteNode(color: SKColor.blue, size: CGSize(width: 50, height: 50))

head.removeFromParent()
hero.addChild(head)
hero.addChild(body)
self.addChild(hero)

head.run(loop)
body.run(loop)

}

但是 Action 不适用于head。如果我将循环应用于 bodyhero 它会起作用。

我做错了什么?谢谢!

enter image description here

enter image description here

更新:当我第一次运行示例时,操作不起作用,但如果关闭应用程序并再次运行它就可以了。

enter image description here

最佳答案

我想说的是有一个有趣的“功能”,当你抓取一个引用 Sprite 时,它会以 isPaused = true;

的形式出现

尝试添加这个

head.isPaused = false;

我相信我之前在从另一个场景中抓取 Sprite 时遇到过类似的问题。

关于swift - 如何从 sks 文件加载节点,然后应用场景编辑器中定义的 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49083914/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com