アドアチーブ株式会社

アドアチーブ株式会社 オフィシャルブログ

2006.10.21アドのオフィシャルTOP小変更。

オフィシャルのTOPページを変更しました。

一番下にFLASHのバナーがあるのにどこも動いて無いじゃん!

というご指摘が。。。

すみません。

多分特にMACのOS9とかの人は見るのが辛いかも。。

ちょっとだけオブジェクト指向にしてみました。

文字列のMCは最初に与えられたパラメーターにしたがって

それぞれ自分の値で動いています。

弊社のツールは全てお客様しだいなので(笑)

文字はさりげにマウスの方向に流れていきます。

以下が主なスクリプトです。

流用は自由ですが、このままコピペしても動きません。

もし、「やりたいっ!」って人がいたら、

rootにcir_mcを作って、中にmy_txt(ダイナミックテキストです)

を入れてください。

ダイナミックテキストに回転やらアルファやらかけちゃってるので

文字は埋め込まないと表示されません。

あとはrootの1フレーム目にコピペ。と。

init();

text_array = new Array("Web","Logo","Company Profile",

"Leaflet","Buisiness Card","Letter","Badge","Envelope",

"Bag","File","Illustration","Apparel","Agency","Office",

"Sign","DVD","CD Press","Uniform")

function init() {

var co = 0;

var my_len = -1;

this.onEnterFrame = function() {

co++;

if(my_len<=(text_array.length-2)){

my_len++;

}else{

my_len=0;

}

cir_mc.duplicateMovieClip("cir_"+co+"_mc", co);

eval("cir_"+co+"_mc")._x = Math.random()*Stage.width;

eval("cir_"+co+"_mc").tmp = 0.1;

eval("cir_"+co+"_mc").rota_ran = Math.random()*10-5;

eval("cir_"+co+"_mc").or_y = eval("cir_"+co+"_mc")._y;

eval("cir_"+co+"_mc").my_txt.text = text_array[my_len];

eval("cir_"+co+"_mc").scale_tmp = 1+(Math.random()*5)

eval("cir_"+co+"_mc").scale_tmp = (eval("cir_"+co+"_mc").scale_tmp>4.5)?50+eval("cir_"+co+"_mc").scale_tmp*1.8:eval("cir_"+co+"_mc").scale_tmp;

make_action(co);

};

}

function make_action(co) {

eval("cir_"+co+"_mc").onEnterFrame = function() {

eval("cir_"+co+"_mc")._y -= eval("cir_"+co+"_mc").tmp;

eval("cir_"+co+"_mc")._x += (_xmouse-eval("cir_"+co+"_mc")._x)/50

eval("cir_"+co+"_mc")._xscale = eval("cir_"+co+"_mc").scale_tmp*(eval("cir_"+co+"_mc")._y/Stage.height*100)

eval("cir_"+co+"_mc")._yscale = eval("cir_"+co+"_mc").scale_tmp*(eval("cir_"+co+"_mc")._y/Stage.height*100)

if(eval("cir_"+co+"_mc").scale_tmp>50){

eval("cir_"+co+"_mc")._alpha = 50;

}

eval("cir_"+co+"_mc")._rotation += eval("cir_"+co+"_mc").rota_ran/15;

eval("cir_"+co+"_mc").tmp = (eval("cir_"+co+"_mc").or_y-eval("cir_"+co+"_mc")._y)/10;

if (eval("cir_"+co+"_mc")._y<0) {

removeMovieClip("cir_"+co+"_mc");

}

};

}

initで初期値を与えて、

make_actionで動かしている感じですね。

eval("cir_"+co+"_mc").scale_tmp = (eval("cir_"+co+"_mc").scale_tmp>4.5)?50+eval("cir_"+co+"_mc").scale_tmp*1.8:eval("cir_"+co+"_mc").scale_tmp;

↑このあたりがデザイナーな要素です(笑)

もっとスマートな書き方あるでしょ!って気もしますが、

動けばいいじゃん。という葛藤と戦いながら作った訳ですね。

なにもFLASH8を使わないと出来ないわけではないのですが

(確か5位で出来たかと。。)

もっとFLASH PLAYER8のバナーにふさわしいTOPページを作れ!

という声が聞こえてきそうですね。笑

まぁまぁ。

でも、こゆのこそ

bitmap@AS3で実装してみたい今日のごろです。

今遅くなってる原因のほとんどが

描画速度の問題やと思うので、

AS3だからといって解決しそうに無い気もしますけど。

この記事へのトラックバック

トラックバックURL:  http://www.adachieve.com/~mt/mt334/mt-tb.cgi/749


この記事へのコメント


名前:
E-mail:
URL:
  情報を記憶: