Shut the fuck up and write some code

グダグダ言わずにコードを書きたいブログ

FlashLite3でデコメアニメを作る

仕事でデコメアニメを作ってます。CS3でちまちまとオーサリングしているんですが、気がついたことをメモしておきます。

FlashLite3はFlashlite1.1のスクリプトの書き方は出来ない。
FL3ではtellTargetやevalが使えないのです。CS3でパブリッシュするとエラーが出ます。

デコメアニメはFL3非対応端末にはドコモのメールサーバ側でFL1.1に変換される、という仕様があるのでそれを見越して「最初からFL1.1でつくっときゃいいんじゃね?」と甘い考えで臨んでたんですがダメでした。

では「最初からFL1.1でパブリッシュしておけばいいかも」とも思ったんですがデコメアニメ変換ツールはFlashLite3でパブリッシュしたものしか受け付けないのです。最悪。

スクリプトで制御するようなデコメアニメは基本的にはFlashlite1.1では非対応にせざる得ないです。ドコモのサイトにも書いてありますが

if (g_convert == true) {
stop();
} else {
gotoAndStop(2);
}

FL1.1に変換されると「g_convert」という変数のフラグが立つので、FL1.1向けの表示フレームに移行するように処理するしかないようです。僕はここから別のフレームに飛ばしてアニメ表示されてメッセージ出して止めるようにしてます。こういうツールもあるのでサーバ側でどう変換されるかエミュレーションで確認するのは可能です。

FL3でtellTargetやevalが使えないのはFL1.1向けに書くのはほぼ絶望的なはずなので、FL1.1向けにはアニメーションさせるしかないっぽい。

こんなことさせる位ならFL1.1は完全に非対応でデコメアニメは見れないようにしてもよかったんじゃないかなーとも思ったり。まあアニメのみのシンプルなデコメアニメであればそんなに気にする問題ないんですけどね。スクリプター泣かせです。flashliteはいつまでこんな感じなんだろう。