Progressionを2から3にする試み

すっげぇ違うのでメモ。Easycastingモードです。
今まで、2.0.22でいくつか作っていたものを3.1にアップデートしてみました。
Progressionプロジェクトパネルから「アップデート」でフォルダを選んでやろうとしたら変なエラーが出てアップデートできなかったので自力でやりました。
まず、index.flaのフレームが違います。2系はloadフレームとinitフレームがあったところが、EasycastingLoaderだけになってます。でもコンポーネントは基本的に変わってないから大丈夫。ライブラリからコピーして「置き換える」を選びました。
3系
2系
それから2系では気にも止めなかったPreloader.flaも置き換えておきます。ここのコンポーネントも3系になって進化したみたい。
ちなみに、Preloaderコンポーネントのパラメータから stage.StageAlign を変更できました。プロジェクトを「中央に表示する」にしちゃってから、StageAlignをTL(T)にしたくなったときはこれを触ればいいんですね。それから、htmlで表示したときの背景色はPreloader.flaの背景色らしいので、白をしていたものをグレーとかにしたいときもここですね。意外と重要だった。
そしてかなりイイ機能が、コンポーネント「Progression Effects」に入ってるエフェクトの数々。2系までは「InOutMovie」でinフレーム、stopフレーム、outフレームを指定してトゥイーンを作っていたものを、1フレームだけのシンボルにエフェクトコンポーネントをぴょいと配置するだけでシーン移動時にエフェクト実行してくれます。これはクール。
EasyCastingで欠かせないのが(っていうかほとんどのボタンがこれになる)RollOverコンポーネントですが、2系の初期からみるとすごくシンプルで洗練されてます。以前は[down点]、[over点]、[up点]、[ツールチップの内容]、[移動先タイプ(scene/http/mailto)]、[移動先(/index/testScene とか)]、[対象ウィンドウ]、とたくさんあったものが、[accessKey]、[navigatePath(/index/testScene とか)]、[toolTipText]の3つになっちゃってます。Rootボタン、Prev/Nextボタンも同じようにシンプルになってます。
mcを作って「up/over/down」のフレームだけ作っちゃえばすぐに使える仕組みですね。
っていうか、EasyCastingなら、EasyCastingLoaderコンポーネント(最初だけ)、RollOverボタン、Rootボタンだけでサイトが作れちゃいます。
僕はシーンわけしたいがためにEasyCasting使って、classes/フォルダに自作クラス作って、変数の受け渡し用にstatic変数を用意する、という、アホな書き方なんですが、これでも意外としっくり来ますよ。
クラスベースは怖いのでおいといて、タイムラインベースにも移行したいと思っているんですが、プロジェクトを作って最初に開かれたindex.flaに「//コマンドを書く」みたいなコメントだけが書いてあって、そこに自作の関数を書くとコンパイルエラーになって、じゃあコマンドって何やねん、分からんわ、と思ったので手をつけずにいます。タイムラインベースでたくさん作ってるサンプルがあればそれを見て覚えようと思います。
ところでProgressionはHTMLを書かせないことを謳っているらしいですが、僕はHTML、CSS大好きなので真っ先にHTML開きます。するとSWFObjectをJSのprogオブジェクトから呼ぶという手間がかかることをやってました。これはバージョン指定を10以上にも対応させた、という意味ですね。わかります。progression.jsを読むと、代替表示の div#attention を直接指定してる部分があるので、Progressionを使うときはdiv#attentionに代替を書くようにしましょう。
あと、、、最強の裏技。
触ってて分からないとき、Twitterに独り言をつぶやくと、@指定してないのにnium様からお返事をいただけます。夜中の2時でも仕事中でも、僕みたいなみのむしの独り言に付き合ってくれるnium様はまさに神です。