私の主なGameSceneにSKSceneを追加したいと思います。 SKReferenceNodeは良い解決策であるようです。SKReferenceNode/SKSceneをSpriteKitの別のSKSceneに追加
私が持っている: - GameScene.sks(メインシーン) - Countdown.sks(GameSceneに追加するシーン) - Countdown.swift
(これを初期化するためにどうするか、カスタムクラス、SKScene SKReferenceNode SKNodeを???)カウントダウンを使用してカウントダウンをプログラムで追加する方法がわかりません。
私が試した:私ものような、よりシンプルなものを試みた
Could not cast value of type 'SKReferenceNode' (0x10d97ad88) to 'LYT.Countdown' (0x10a5709d0
:
let cd=Countdown(scene:self)
self.addChild(cd)
をしかし、私は方法がわからない
let path = Bundle.main.path(forResource: "Countdown", ofType: "sks")
let cd = SKReferenceNode (url: NSURL (fileURLWithPath: path!) as URL) as! Countdown
cd.name = "countdown"
self.addChild(cd)
をしかし、私は次のエラーを持っていますCountdown.sksファイルを使用してクラスを初期化します。
SKNodeクラスを作成してプログラムで100%初期化することもできますが、Xcodeシーンエディタを使用するには、関連する.sksファイルを使用することが重要です。
を見つけるために拡張したものであるカウントダウンがFUNC更新を使用しているあなたのように聞こえますか?あなたは2つのSKSceneを1つに追加することはできませんが、SKSpriteNodeやSKNodeのようなCountdownをサブクラス化してSKReferenceNodeの中で使用することができます。 –
@SimonePistecchia SKNodeでサブクラス化すれば、 "class Countdown:SKReferenceNode" sksファイルを使って私のノードを初期化しますか? – cmii