私はCCLayerを継承し、CCSceneを返すGameWorldクラスを持っています。私のGameWorldには合成されたプロパティ「スコア」があります。スコアは2秒ごとに増分されます。ゲームをプレイする時間が長くなるほど、スコアは高くなります。別のクラスのセッターメソッドへのアクセス
素晴らしい!
私は、CCNodeを継承し、スプライトを返してレイヤーの子として追加するGameObjectを呼び出します。すべてのGameObjectには「コスト」プロパティがあります。
新しいスプライトを追加するたびに、スコアに応じてスコアが下がります。
スコアを減らす(int)コストを含むGameObjectからGameWorldに自分の(int)スコアを設定するにはどうすればよいですか?
つまり、クラス内からGameWorldスコアを設定/取得するのは簡単ですが、私のGameObjectクラスはGameWorldを見ることができません。クラスのプロパティのセッターメソッドを別のクラスに公開する方法はありますか?
ありがとうございます!
私はこのようなことをしています。あまりにも多くのシングルトンを作成したくないのですが、GameWorldのようなオブジェクトは、そのようなもののようなものです。なぜこれを「一時的な」シングルトンと呼んだのですか?それは正常に見えます。 –
あなたのGameWorldが存在する間はシングルトンのみが存在するため、一時的です。たとえば、メニュー画面では使用できない場合があります。 「通常の」シングルトンはアプリの生涯を通じて利用できますが、厳密に言えばパターンとは異なります。 – LearnCocos2D