flash+wordpress


wordpressのエントリー中に、swfで写真を貼付ける方法について。
いままでは、swfファイルに外部jpegファイルを読み込ませる『loadMovie』メソッドを使っていた。
この方法を授業で習ったという経緯があり、また、jpegが外部にあるほうが更新する際に都合がよいという気もしていた。
実際、webサイト中の当該swfファイルが、ほとんど変更の必要が無く、jpegファイルのみを変更したい場合は、この方法は良いやり方だと思う。


現在、自分でwordpressを使いサイトを制作し、情報をアップしているのだが、ブログ系コンテンツは、一度アップしたswfファイルのjpeg画像をのちのち別の画像に差し替えるということがほとんどないことに気がついた。(いまさらだが)
さらに、swfファイルとjpegファイルが別々に存在し、なおかつ大量になるに従って、ファイル名を目で見て探すのもとっても面倒になってきた。もちろん、老眼だからよく見えないのが原因なのだが。


そうなると、jpegファイルはswfファイルに埋め込まれていたほうがよい。そうすれば、なにしろswfファイルのみ整理しておけばよいのだから、ファイルの数はとても少なくて済む。


しかしながら、ひとつ問題が。
flashでのフォトギャラリーの組み方だ。


複数のボタンか、サムネイル画像を配置し、それらを押すとのメインの画面に、大きな画像が表示されるように作りたい。しかしながら、出来ればメインのタイムラインは使いたくない。画像が増えると、レイヤーもタイムラインの長さもどんどん増えるからだ。そうすると、やはり老眼なのでよく見えなくなってくる。キーフレームにいっこいっこポチポチと画像を埋め込んでいくのはうんざりだ。やはり、メインのタイムラインには、action scriptを書いて、ボタンと画像を表示させたいのだ。


ライブラリに登録されている、ムービークリップインスタンスを、ルートのステージの任意の位置に読み込ませるには、どうしたらいいのか?いままで知らなかった。
今日はじめて、『attachMovie』をつかえば、任意の位置にムービークリップインスタンスを生成することが出来ると知った。(いまさらで、お恥ずかしいかぎりだ。でも、マクロメディアの認定コースでは『attachMovie』なんてこれっぽっちも出てこなかった。)


これは、たいへん便利。(笑)
久しぶりに、ちょっと感動。
やはり、action scriptはよい。


以下にスクリプトを記載してみる。
とりあえず動いたが、作法がまともかどうかは?ハテナ。


作ったあと、ふと思い浮かんだのだが、これに、インターバルとランダムを組み合わせると、画面のランダムな位置に、ランダムなインターバルで、mcのインスタンスを出現させることができるわけで、面白いものが出来そうな予感がする。(笑)


簡単なスクリプトで、簡単にできる面白いものを、もっとたくさん知りたい。
日々是勉強です。


>||btn1_mc.onRelease = function() {
_root.attachMovie("foto1", "foto_mc", 0, {_x:0, _y:0});
};
btn2_mc.onRelease = function() {
_root.attachMovie("foto2", "foto_mc", 0, {_x:0, _y:0});
};
btn3_mc.onRelease = function() {
_root.attachMovie("foto3", "foto_mc", 0, {_x:0, _y:0});
};
btn4_mc.onRelease = function() {
_root.attachMovie("foto4", "foto_mc", 0, {_x:0, _y:0});
};
btn5_mc.onRelease = function() {
_root.attachMovie("foto5", "foto_mc", 0, {_x:0, _y:0});
};
obj = new Object();
obj.interval = function() {
System.useCodepage = true;
var n:Number;
n = Math.floor(Math.random()*5+1);
var foto:String;
foto = "foto"+n;
_root.attachMovie(foto, "foto_mc", 0, {_x:0, _y:0});
};
setInterval(obj, "interval", 17777);

<


5個のボタン(btn1_mc〜btn5_mc)が配置されており、それらを押すとそれぞれに対応したムービークリップインスタンスムービークリップ:識別子foto1〜foto5のインスタンスfoto_mc)が、ステージの原点に生成される。ボタンを押さずに、何もしないでいると、インターバルでインスタンスがランダムに生成される。


という内容。foto1〜foto5のムービークリップを作り、それぞれリンケージの識別子を設定する。


action scriptも3.0になったことだし、機会があればまた勉強しに行きたいものだ。