0

これは私の境界を超えているため、解決する必要がある複雑な状況があります。

私は作成します:

  • ゲーム:クラス A のインスタンス(シングルトン パターンで構築された静的クラス)
  • 質問:クラス Bのインスタンス(シングルトン パターンで構築された静的クラス。これは、ユーザーがクラス A インスタンスからオプションを選択するたびに作成および削除されます)
  • スコア:クラス Cのインスタンス( public function )

問題は、スコアが常に表示されるため、ScoreインスタンスがGameインスタンスで作成されることです。質問インスタンスには、ユーザーの選択に応じて各質問の結果が含まれているため、すべてのコードを持っていますが、この部分しか残っていないため、これを知る必要があるため、ここに貼り付けるのは非常に困難です。

これを行う方法はありますか?

ありがとう

4

1 に答える 1

0

あなたがすべき:

//document class
package 
{
    import flash.display.Sprite;
    import flash.events.Event;

    public class DocumentClass extends Sprite 
    {
        public static var GAME;
        public function DocumentClass() {
            addEventListener(Event.ADDED_TO_STAGE, init);
        }
        private function init(e:Event){
            removeEventListener(Event.ADDED_TO_STAGE, init);
            GAME = new Game();
        }
    }
}
//Game class
package 
{
    import flash.display.Sprite;
    import flash.events.Event;

    public class Game extends Sprite 
    {
        public var score:int;
        public function Game() {
            addEventListener(Event.ADDED_TO_STAGE, init);
        }
        private function init(e:Event){
            removeEventListener(Event.ADDED_TO_STAGE, init);
            //some functions/listeners & variable settings.
            score = 0;
        }
        private function someFunction() {
            stage.addChild(new HighscoreTable(score));//passing score to the highscore table...
        }
    }
}

静的クラス (コンストラクターなしで静的変数と関数のみを含む) は役に立たないことがよくあります.. 他の「トリック」と組み合わせてみてください。

于 2012-07-29T19:09:16.233 に答える