【发布时间】:2016-09-17 19:54:29
【问题描述】:
在我的 GameScene.sks 中,我有一个代表“球”的 SKSpriteNode。
我需要将 SKSpriteNode 子类化为 Ball:
class Ball:SKSpriteNode {
//custom init
}
在我的场景中,我想使用 .sks 中的 SKSpriteNode 初始化我的 Ball。
当我使用 Xcode 8 时,我尝试在我的 SKSpriteNode 中使用自定义类:
self.ball = self.childNode(withName: "ball") as! Ball
但是我的应用程序在这一行崩溃了... 另外我不确定如何为我的子类创建自定义初始化程序。
仅供参考,我宁愿避免出现以下情况:
class Ball:SKNode {
var sprite:SKSpriteNode!
}
let ball = Ball()
ball.sprite = self.childNode(withName: "ball") as? SKSpriteNode
【问题讨论】:
-
为什么要将
Ball转换为Puck? -
@appzYourLife 只是一个错误 :)
-
这是一个很好的例子,Apple 没有解释如何从 SpriteKit 场景编辑器中获取一些东西到代码中,然后从那里开始使用它。场景编辑器和代码存在于两个不同的世界中,它们之间的桥梁是由理解的人无法解释的麻线构成的。
标签: swift sprite-kit skspritenode skscene