AS3でloadMovie

※Flash9 アルファ版でのスクリプトテストです

基本的にexe書き出しの上でのloadMovieばっかりやってるんですが、flash8exe書き出しの際はドキュメントルートがそれまでと違ったり、screenweaverでロードするときはドキュメントルートを含んだ上でパスを指定したりと、まぁめんどくさいわけですが。

今回はAS3でloadMovie。
というかloadMovieメソッドはなくなったので、Loaderクラスを使います。

import flash.display.*;
import flash.net.URLRequest;
var rect:Shape = new Shape();
rect.graphics.beginFill(0xFFFFFF);
rect.graphics.drawRect(0, 0, 100, 100);
rect.graphics.endFill();
addChild(rect);
var ldr:Loader = new Loader();
ldr.mask = rect;
var url:String = "Hoge.swf";
var urlReq:URLRequest = new URLRequest(url);
ldr.load(urlReq);
addChild(ldr);

まず上半分はいらないんだけどとりあえず。
シェイプクラスで0,0から100,100まで四角を描きます。addChildってのは今まででいうattachMovie。Childを使うことでE4Xに対応するのが簡単ということですね。
で、下半分。読み込むのはHoge.swf。これをURLリクエストクラスのオブジェクトで生成して、loadメソッドで読み込み、addChildで表示。

コード的には直感的になってるとはいえ、これまでのノウハウを一切使えないというところが怖い。
しかもこの場合、ムービーのローディングはloaderクラス内でやるべきなのかな? だとすると今までの資産の再利用が…あああー! ってことになりかねません。

引き続き調査。

この記事には、カテゴリ AS3 タグは , がつけられています。