Progressionのコマンドで分岐

Posted 2010年3月6日 | Auther dada | Category PC・デジタル | Tag タグ: , ,
Twitterにツイートする Facebookでシェアする はてなブックマーク

コマンドリストを実行している時、
途中のコマンドの結果によって分岐させたい時の方法。

var hogeCommand:HogeCommand = new HogeCommand();
var serial:SerialList = new SerialList();

serial.addCommand( hogeCommand );

serial.addCommand( new Func( function():void {
	// コマンドの結果で分岐
	if ( hogeCommand.value ) {
		serial.insertCommand( new Trace("コマンドを挟む"));
	}
}));

serial.execute();

HogeCommandクラスの実行結果を受け取りたいので
インスタンスを先に作っておきます。

var hogeCommand:HogeCommand = new HogeCommand();

今回のキモ「insertCommand」です。
これにより動的にコマンドを挿入させることができます。

	// コマンドの結果で分岐
	if ( hogeCommand.value ) {
		serial.insertCommand( new Trace("コマンドを挟む"));
	}

このやり方についてはIs It So Easy?さんが詳しく書かれています。
this.parentで挿入することも出来るんですねー。

[改訂版]ActionScript3.0プログラミング入門 for Adobe Flash CS4/CS3 [改訂版]ActionScript3.0プログラミング入門 for Adobe Flash CS4/CS3

ビー・エヌ・エヌ新社 2009-07-23
売り上げランキング : 79902

Amazonで詳しく見る by G-Tools

Progression4のリソース系で謎のエラー

Posted 2010年3月2日 | Auther dada | Category PC・デジタル | Tag タグ: , ,
Twitterにツイートする Facebookでシェアする はてなブックマーク

いったい何がキッカケだったのかまったくわからないけど、ある日突然出てきたエラー。

Resource.as、行 44
1004: 名前空間が見つからないか、コンパイル時定数ではありません。
progression_internal static const $collection:IdGroupCollection = new IdGroupCollection();

いろいろ試して、音声ファイルがリンケージされていると発生することがわかりました。
下記のようにごく一般的なファイルを普通にリンケージしただけえす。

ファイル:testse.wav
クラス:testse
基本クラス:flash.media.Sound

「最初のフレームに書き出し」のチェックを外すとエラーは出ません。

しかし上記チェックを外すわけにもいかず色々試していたら、
Index.asに下記の行を追加したらエラーが出なくなりました。

function hogehoge():void {
	getResourceById("hoge").data;
}

この関数はどこからも呼ばれませんが、記述しておくだけで良いようです。

バグなのか仕様なのかはわかりませんが、公式のフォーラムに報告しておきました。

ActionScript 3.0 エラーアーカイブス コンパイルエラー・コンパイラ警告・ランタイムエラーの解法 ActionScript 3.0 エラーアーカイブス コンパイルエラー・コンパイラ警告・ランタイムエラーの解法
大重美幸

ソシム 2009-09-09
売り上げランキング : 83197
おすすめ平均

Amazonで詳しく見る by G-Tools

カテゴリー