Progression4(正式版)のPRMLLoaderが変わった

以前の記事でPRMLLoaderを使ってシーンを生成した後にmanagerを参照するにはちょっとしたコツがあったんだけど、正式リリースされたProgression4ではそこが改善されてる!ということで、正しいPRMLLoaderの使い方をメモ。

Index.as

public function Index() {
	// 自動的に作成される Progression インスタンスの初期設定を行います。
	// 生成されたインスタンスにアクセスする場合には manager プロパティを参照してください。
	super( null, null, new WebConfig() );
}

まずはIndexクラスのコンストラクタで第1引数と第2引数をnullにする。これは前回と同じ作法。

override protected function atReady():void {
	pl= new PRMLLoader(this);
	pl.addEventListener(Event.COMPLETE, onPRMLComplete);
	pl.load(new URLRequest("xml/prml.xml"));
}

次にatReady関数内でPRMLLoaderをインスタンス化する。今までは第1引数にstageを参照する仕様になってたんだけど、Progression4(正式版)からはDisplayObjectContainerクラスに型が変更されたみたい。ここをthis参照にすることで本来のmanagerに引き継げるようになる。

private function onPRMLComplete( e:Event ):void {
	// 開発者用に Progression の動作状況を出力します。
	//Debugger.addTarget( manager );

	pl.removeEventListener(Event.COMPLETE, onPRMLComplete);
	pl= null;

	// 外部同期機能を有効化します。
	manager.sync = true;

	// 最初のシーンに移動します。
	manager.goto(manager.syncedSceneId);
}

prml.xmlを読み込んだ後は、どこからでもmanager経由でシーンを参照出来るようになってすごい便利になったよ。

2010.05.11 by _simo
Categories: as3 | Tags: | 1 comment

One Comment

  1. Pingback: TNK |  Progression4のScene管理をprml.xmlで行う

Leave a Reply

Required fields are marked *

*