[備忘録]ActionScript 3.0

ひとりごと // 2008年10月16日 - 20:22

ActionScript 3.0の変な仕様?を見つけた。
なんか勘違いしているのかもしれないけど、備忘録として。

swfファイルからシンボルを取り出すとき、

[ Embed(source='ファイル名.swf',symbol='リンケージ識別子') ]
private var hoge : Class;

って書いて取り出すんだけども、これをMovieClip型でインスタンス化したあとaddChildすると表示されない。なんでかはわからないけど、インスタンス化するシンボルがタイムラインを使っていない場合(つまり1フレームで完結してしまっているシンボルの場合)、Sprite型でないと表示されない。逆にタイムラインを使うとMovieClip型でも表示されるようになる。謎。

それと、Sprite型はタイムラインを持たないんじゃなかったっけ?って思ったのが、なんとタイムラインを使ったシンボルをSprite型でインスタンス化しても普通にタイムラインが再生される。謎。

なぜだ〜。