トップロゴ (2005-10-23)
2005-10-23時点でのトップロゴのフラッシュです。マウスの位置で星がぽんぽんでてきます。メニューでコンテンツにリンクしています。
トップロゴのプログラムは以下のとおりになっています
<メニュー部分>
//リリースしたらコンテンツ内容をフレーム「newfame」にロードさせるプログラムです。
on (release) {
getURL("リンク先(相対にしておくと鯖返したときに楽なんじゃないかな)", "newframe");
}
<ロゴ部分>
//リリースしたら開いているウィンドウにトップページをロードさせるプログラムです。
on(release){
getURL("トップページにリンクさせてます。");
}
<ロゴ裏の星>
//ロードしたら実行する内容です。
onClipEvent (load) {
//まずひとつの星を20個までコピーします。
if (_name == "org") {
maxnum = 20;
for (num=0; num<maxnum; num++) {
this.duplicateMovieClip("hosi"+num, 10+num);
}
}
this.init();
//コピーされた星はそれぞれこの定義関数を実行します。内容は、X座標、Y座標、倍率、不透明度を決定します。
function init() {
_x = Math.random()*250;
_y = Math.random()*40+20;
scale = Math.random()*80+20;
_xscale = scale;
_yscale = scale;
_alpha = scale-20;
}
}
<ロゴ裏の星の中身>
//モーショントゥイーンで星の点滅するムービーを作ります。
//2〜5秒まってからムービーを再生させるプログラムです。これによって点滅し始めるタイミングがばらばらになります。
set_time = Math.random()*3000+2000;
setInterval(this, "play", set_time);
stop();
<マウス星>
//enterFrameのfunctionが同じ階層にあってはならんので、シンボル化した星の中に記述します。
//この部分は<ロゴ裏の星>を参照してください。
onClipEvent (load) {
if (_name == "mouse") {
maxnum = 20;
for (num=0; num<maxnum; num++) {
this.duplicateMovieClip("mouse_hosi"+num, 10+num);
}
}
this.hosi_idou();
//コピーされた星はそれぞれこの定義関数を実行します。内容は、X座標、Y座標をマウスの位置に、X、Y方向の初期速度、倍率、不透明度を決定します。
function hosi_idou() {
_x = _root._xmouse;
_y = _root._ymouse;
x_speed = Math.random()*6-3;
y_speed = -Math.random()*10;
scale = Math.random()*50+20;
_xscale = scale;
_yscale = scale;
_alpha = scale+Math.random()*10;
}
}
//enterFrameするたびに横に移動するとともに、下に落ちてくプログラムです。ビミョーに擬似空気抵抗入れました。
onClipEvent (enterFrame) {
x_speed *= 0.99;
_x += x_speed;
y_speed += 1;
_y += y_speed;
//したまで落ちたらまた定義関数を呼び出します。
if (_y>80) {
this.hosi_idou();
}
}
今回のFLASHはHPのメニュー部分をFLASHで作りたかったのと、複製についてのプログラムの勉強がしたかったので作りました。今回からHPに乗せるつもりで作ったので少しシンプルになったかな?なってるといいんだけどwしたつもりだけんどね(;´Д`)
やってて同じ階層にenterFrameのfunctionがあっちゃいけないことを思い出した。893ヘッド君の休日を作ったときも気づいたんだけど。再確認できてよかった。
今回製作したファイル
・top_logo.fla
・top_logo.swf(「右クリック→対象をファイルに保存(A)...」で保存できます)
|