CCScene といくつかの CCSprites がノードとして追加されています。次に、いくつかの巧妙な振る舞いをする CCSprite のサブクラス (これも同じ CCScene クラス インスタンスに追加されます) を作成します。このクラスがメイン シーンに追加された CCSprite ノードを参照し、それらのいくつかのプロパティ (可視性など) を変更できるようにしたいと考えています。私の現在の解決策は、Whatever クラスのメンバー変数として NSMutableArray へのポインターを追加することです。
CCScene クラスを使用して、Whatever クラスを介してこれらのアクションをトリガーします。たとえば、Whatever ノードの "TriggerAction" メソッドを特定の時間に呼び出します。このアクションは、同じ親 CCScene に属する CCSprites を変更します。
私は初心者ですが、潜在的に危険なように思えます。これは既知の設計パターンなのか、それともさらに悪いことに、既知の間違いなのか疑問に思っています。
このようなパターンを使用した経験はありますか? Cocos2D は Flash からいくつかの概念を継承しているため、タグとして「Flash」を追加しました。
編集:
触れたときに LevelIcon スプライトを表示するはずの特別なスプライト (惑星など) です。私の問題は、画面上の惑星の位置に対して levelIcons を配置したいということです。これを行う最も簡単な方法は、惑星を含むシーンにそれらを追加することでした。私は今、それらがWhateverサブクラスとして惑星にのみ追加される解決策を探求します..問題は、この方法でそれらをたくさん結合し、LevelIconsを必要としない他のシーンでWhateverクラスをリサイクルできないことです.