私のGameScene.sksには、「ボール」を表すSKSpriteNodeがあります。.sksファイルを使用してSKSpriteNodeのサブクラスを初期化します。Xcode 8
私はボールとしてSKSpriteNodeをサブクラス化する必要があります。私のシーンで
class Ball:SKSpriteNode {
//custom init
}
、私は.sksでSKSpriteNodeを使用してのinit私のボールをしたいと思います。
私は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
を試してみてください? –
@appzYourLife単なる間違い:) – cmii
これは、AppleがSpriteKit Scene Editorからコードに何かを取得してそこから再生する方法を説明していない素晴らしい例です。シーンエディタとコードは2つの異なる世界に存在し、それらの間の橋は撚り糸で作られており、理解できるものは説明できませんでした。 – Confused