0

1 つのフレームでゲームを作成しましたが、フレーム 1 にプリローダーを追加するためにフレーム 2 に移動しました。

ただし、奇妙な問題に遭遇しました。最上位の MovieClip はすべて初期化されますが、それらの子は初期化されないようです。

たとえば、このオブジェクト winDialog があり、その中に nextLevelButtonInst という名前の子があります。だから私は行を持っています:

winDialog.nextLevelButtonInst.addEventListener(MouseEvent.CLICK, GotoNextLevel);

これは、ゲームが 1 フレームのみの場合は正常に機能しますが、この 2 フレーム目では機能しません。

デバッグ変数を見ると、winDialog は通常のログを記録し、子の nextLevelButtonInst がありますが、null に設定されています。これは、ほとんどすべてのムービークリップで同じです。

2 番目のフレームに移動すると、なぜこれが発生するのでしょうか? おそらく最初のフレームでそれを見つけることができなかったので、winDialog が null の場合は意味があります。しかし、なぜ子供だけがnullになるのかわかりません。

これにより、サウンドが見つからないなど、あらゆる種類の問題が発生しています。

ご協力いただきありがとうございます!

4

1 に答える 1

0

メインクラスを使用していますか?または、最初のフレーム内にコードがあるだけですが、とにかく、このコードは、2番目のフレームに入るまで、2番目のフレームにあるものの存在を認識しません。

したがって、2番目のフレームに移動した後でリスナーを追加すると、すべて問題がないはずです。

于 2012-08-13T12:46:14.403 に答える