最近複数のSWFを読み込んでサイト制作することが多くなってきました。 10個近くになることもあったりなかったり。 数が多くなってくるといちいち10個パブリッシュするのがめんどくさいこともしばしば。 すべてのSWFで共通して使用しているクラスがあって、そのクラスを修正した場合とか。。。

そんなわけでFlashで開かれているflaファイルを全部パブリッシュするJSFLを作ろう!

var doclist = fl.documents; var amount = doclist.length; var doc; for(var i = 0; i < amount; i++) { doc = doclist[i]; doc.publish(); }

テストムービーで確認したいなぁ。。
じゃあ、全体を読みこむflaを最後にしておいて(他のをパブリッシュさせてから読み込みたいので) そいつだけテストムービーにしよう。

var doclist = fl.documents; var doc; var amount = doclist.length; var last = amount - 1; for(var i = 0; i < last; i++) { doc = doclist[i]; doc.publish(); } doc = doclist[last]; doc.testMovie();

よしよし。次は・・・・・・。
とやってたんですが、Flashにはプロジェクトというのがあって(存在はしってたけど、使ったことなかった)プロジェクトにファイルを登録しておけば、 プロジェクトのテストでまとめてパブリッシュして、デフォルトのドキュメントに設定したものを最後にテストムービーしてくれるっていう。 まんまあったんですね。勉強になります。

やり方は
1.ウィンドウ>プロジェクトでプロジェクトパネルを開きます。
2.「新規プロジェクトを作成」からFlashプロジェクトファイル(flpファイル)を作成します。
3.プロジェクトに追加したいファイルを「新規ファイルを追加」から選択してプロジェクトに追加します。
4.デフォルトのドキュメント(プロジェクトをテストした際に最後にテストムービーで開かれる、全体のルート的なファイル)を設定したい場合は、該当のflaファイルを右クリックしてダイアログから「デフォルトのドキュメントにする」を選択します
5.「プロジェクトのテスト」で登録されたファイルがパブリッシュされ、デフォルトのドキュメントのファイルがテストムービーされます。

いやー、便利だなぁ。ではでは。

HTML5飯