結局Tweenerにしました
結局、FuseKitだとalphaToしたあと、もう一回alphaToさせるのが面倒で、
いちいち条件分岐とかしたくないし、直感的にやりたかったので、
AS2.0ベースでもTweener使うことにしました。
TweenerはonCompleteとかの処理が使いやすいんですよねぇ。
終わったあとにこの処理やってー、っていう流れで作れるから楽。
FuseKitだと、そのへん面倒で。
あと、FuseKitだと、インストールしてる人じゃないとイジれないのがネック。
僕だけがflaファイル全部イジるならともかく、そうでない人もイジる可能性があるし。
その点、Tweenerは、importなのでフォルダごと渡せばイジれる。
とりあえず、Tweener AS2.0版でのメモ。
・x は _x 。アンダーバー必須。
・アンダーバーは他にも、 _y、_alpha、_xscale、_yscaleとかかな。
・FilterShortcutsもinit();すれば使える。_Blur_blurX:0 など。使い方は一緒かな。
・クラスパスを通すのと、importするのも一緒。
・つーか、アンダーバーのあたりを注意すればほぼ同じように使える。
でも、何か、やってて思ったけれども、
AS3.0ベースで直前にいろいろ作っていたせいで、
作り方に違和感があるもんですね。
ムービークリップに直接スクリプト書けるのはでかいけど、
僕はどっちみちフレームに書くことが多いんで、差はないような。
とりあえず、がんばろう。
FuseKitで相対位置をとるには
やっぱFlash超面白い。さわってて、あっという間に時間が過ぎる。
現在の案件はAS2.0ベース。
ていうか、アニメーションでギュンギュンいわせるなら2.0で十分だと思います。
ムービークリップに直接onClipEvent書けるのとか、直感的で楽だわ、やっぱり。
なので、スプラッシュとして視聴者にムービー作るだけなら2.0でいいや。
で、2.0だと、やっぱりFuseKitに超お世話になるわけです。
で、すごい残念なところで今日つまづきました。
Tweenerだと、相対位置に動かすだけなら、
Tweener.addTween(target,{x:x+n,y:y+n,time:2,transition:easing});
って感じで、+いくつ、っていう数字いれるだけで良かったんだけど、
なぜかFuseKitだとうまくいかない。
あれー?こうじゃないのー?
target_mc.slideTo(x+500,y+500,5,0,0,0);
違うみたいだなぁ。動かないや。所定位置から微動だにしない。
にゃあプロジェクトさんとこの記事読んで、謎が解けた。
FuseKitだと、相対位置は”"で囲むんですねー。
なので、正解は
target_mc.slideTo("500","500",5,0,0,0);
となるわけですか。なるほど。
こういう、情けないミスというか、こんなので時間食うのはもうちょっと何とかしていただきたい。
はい、がんばります。
ていうか、こういうのがアレなら、最初から2.0ベースでもTweener使えって話?
なんか僕、あのコは3.0の子ってイメージが強くて……。
どのみちFuseKitは2.0でしか使えない子だから、2.0ならせめて使ってあげたくて……。
次回からはぜんぶTweenerでいこうと思います。です。
flashメモ・2 / テキストデータはalphaせず
flashの個人的なメモ。
・スムージングをすると、当たり前だけど、ビットマップフォントなんかはにじみますね。
いや、当たり前なんだけどね。スムージング自体が、ビットマップにアンチエイリアスかけるしろものだから。
なんだけど、ビットマップフォント使ってたから、なんでにじむのかちょっと悩んだ。
・ああー。なんで外部ファイルからとったテキストデータがTweenしないのか分かったー!
flashの仕様として、「テキストデータ」はalphaがかけられないらしい!
つまり、例えば「_ゴシック」とかのデバイスフォントを利用していたり、テキスト入力してたりとか。
要は「選択ができるテキスト」はダメっぽい。そっかー。
回避策としては、そのデータをBitmapにしちゃうか、alphaのマスクをかけちゃうかなど。
僕は面倒だからBitmapにしてみた。つまり、その、デバイスフォントじゃなくしてみた。
ちなみにこれ、FlashPlayerのver.10からは問題ないみたい。ちょっとの辛抱か。
・Progressionにて、indexページがあり、その下の階層には、ぜんぶ「TOPへ戻る」的な
ボタンが欲しくて、そんでそれはその階層にいる間は消えないでほしいんだけど、
そういった処理はどうしたらいいんだろう?
indexの子にaboutだlinkだ置いていても、子同士の移動に親を経由しちまう。
だから、いちいちボタンが出たり入ったりする。嫌だなぁ。
↓
と思ってたんだけど、下の階層をぜんぶ一つのコンテナシーンでくくって、
そのコンテナのonLoadにボタン出現、onUnloadにボタン消滅処理を作ることで実現。
ああ、シーン遷移のルールをちょっと分かったぞ。
こういった、通りすぎる時だけの処理をさせるシーンがあってもいいんだねー。なるほろ。
Progressionを学ぶ(4)
すごい初心者なこと。
ProgressionのaddCommandは、ふつうにやると直列処理なのだけど、
たまには同時にコマンドしてよお願いだよぷろぐれっしょん、と思うこともあるので、メモ。
やり方は超簡単。
addCommand( //並列処理 [ new AddChild(なんたら), new AddChild(なんたら2) ], //直列処理 new AddChild(なんたら3) );
ってやるだけ。うわーい。こんだけだー。
他にもこんな方法もあります。
addCommand( //並列処理 new ParallelList(0, new AddChild(なんたら), new AddChild(なんたら2) ), //直列処理 new AddChild(なんたら3) );
パラレルリストをnewする方ですね。
こちらは最初の引数に null とか0を入れないと動かないみたい?
まあ、とりあえずこれで並列処理ができるようになりました。
さて、またがしがし作っていきたいとこです。
rightparen が colon の前に必要です。
スクリプトがしがし書いてて思うけど、
rightparen が colon の前に必要です。だとか
rightparen が leftbrace の前に必要です。だとか
そういうエラーにいちいち惑わされないようにしよう、僕。
意味わかんないし、そういうエラーってつまるところ文法エラーだから、
何か、どこ直せばいいってもんじゃなく、いろいろ間違ってるから、がんばれって話。
ちなみに rightparen っていうのは、「右かっこ」のこと。「)」←これですね。
これが、: (colon)の前に足りねーよ、って言われてるんだけど、
鵜呑みにして「)」入れたところで別のエラー言われるのは見えてるし、いちいち真に受けるなと。
んで leftbrace は、ええっと、たぶん「{」←これのことだと思うけど、
これも別に入れたら直るってもんじゃないので、がんばれって話。
だから、そういうエラーがでたら、文法エラーです、って言われてるんだと思ってください。
はい。思うことにします。



