私は、ゲームプレイレイヤがロードされたときにロードされている自分のゲームのアセットをいくつか持っています。ロードする画面でアプリケーションを起動するときにロードする方が好きです。これは明らかに標準的な作業です。cocos2Dのアセットをあらかじめロードする
私の問題は、新しいシーンがcocos2D内で起動される方法です。プロジェクト全体でいくつかの場所で(いくつかのバリエーションで)発生し、次のコードを考えてみましょう:
[[CCDirector sharedDirector] replaceScene:[CCTransitionShrinkGrow transitionWithDuration:0.5f scene:[GameplayLayer scene]]];
これは、新しいものと現在のシーンを交換するための標準的な方法です。私の質問は、そのフォーマットを前提に、プリロードされたアセットを新しいGameplayLayer
にどのように渡すのですか? cocos2Dでこれを行う方法はありますか?私は信じられないほどシンプルなものを見逃しているような気がしますが、今のところそれは私の謎です。
スプライトシートや簡単な画像を使用していますか? –
私はスプライトシートを使用していますが、私が最も関心を持っているのは自分自身で作成したクラスです(つまり、シーンを1つ読み込んでどこでも自動的に使用できるクラスではありません)。 – jonmorgan
アセットの読み込み以外にも、メッセージとデータオブジェクトをシーン間で渡すための一般的なアプリケーションがあります。たとえば、レベルが終わったら、いくつのポイントが得られたか、どのくらいの時間がかかったかなどの概要を新しいシーンにロードすることができます。 – jonmorgan