2007/11/13
AS3:タイムラインを移動した直後にフレーム上のオブジェクトにアクセスできない
日々AS3につまづきまくっています。
今日はタイムラインにつまづきました。
gotoAndStopなどでタイムライン上を移動し、その直後にそのタイムライン上にあるムービークリップなどのオブジェクトにアクセスする、ということはできないようです。
AS2だと、たとえば、
gotoAndStop("someFrame");
trace(someMc);
というようなことをやると、someMcへの参照を得ることができましたが、AS3ではnullが返されます。
では確実に飛び先のフレームのオブジェクトにアクセスできるタイミングはいつなのか、というと、
飛び先のフレームに直接スクリプトを書いておくと、それが実行されるタイミングでは確実にアクセスできるようです。
フレームの要素がadded_to_stageされた後に、そのフレームのスクリプトが実行される、ということなんでしょうか。
しかし、コードはできるだけ一箇所にまとめて書いてしまいたいものです。
うーん、これはAS2よりも扱いづらくなってるんじゃないんだろうか。。。