SWISHのお勉強

(26)外部ファイル読み込み型画像ギャラリー(2)

2005/4/29
 外部ファイル読み込み型画像ギャラリーで、複数シリーズを入れ替えて表示するタイプの作成である。 ここでは、今年の広島地方2地区での紅葉を写した写真を10枚ずつサムネイル・クリック方式で表示するものである。 同じものをFLASHでAction Scriptを使って作成し、FLASHのお勉強で示しているが、このSWiSHでは、タイムラインのFrame Actionと若干のScriptを使って作成した。 FLASHと比較して非常に作りやすいと言うのが作後の感想である。 サムネイルがシリーズで落下する姿は、SWiSHの方がはるかに美しく出来る(いろんなバリエーションが可能)。
ステージの設定
(1)w640×h480、背景色・黒、FrameRate12のムービーを設定する。
(2)画面左上にシリーズごとの表示ボタンを作成する。 ここでは、三滝寺と宮島のボタン(w50×h33)を水平に並べた。
   「の紅葉を訪ねて」のテキストは普通に文字を入力しても良いがここではシェイプとしてグループ化後色付けした。
(3)画面左上(表示ボタンの左下)に、空のスプライトを設置する(挿入ースプライト)。 このスプライトの左上頂点に外部ファイル画像の左上頂点が来るように読み込まれる。
(4)ボタン三滝寺、及び、宮島の背後にそれぞれ10枚のサイズw60×h40のサムネイルを2/3に縮小して重ねて配置し、それぞれ、m1,,,,m10までの名前をつける。(サイズは、ロールオーバー時に元のw60に拡大する)
(5)配置したサムネイル10枚ずつを、それぞれ、スプライトとしてグループ化(mitaki,miyajima)する。
タイムラインの設定
(1)スプライト mitaki、および、miyajima それぞれ同じエフェクトを設定する。mitakiの場合を以下に図示する。
(2)タイムラインを1フレームずらしながら10枚のサムネイルに同じエフェクトをつける(ここでは、カンカン踊り20FRAME)。
エフェクトはコピーしてペイストすればよいが、移動先は、yは410と同じだが、 xは0,50,100,,,,と50ずつ増やして設定する。これは、エフェクトの最後に画面下に一列に並ぶようにするためである。
(3)それぞれのサムネイル(m1,,,,,,m10)に拡大(150%)、縮小(70%)の変形エフェクトを4FRAMEずつ設定する(下図)。
(4)一番上のスプライト(mitaki)のタイムラインのエフェクトの前後にstop();のスクリプトを挿入する(赤い四角)。
  スクリプトの挿入は、タイムライン上で右クリック、「ムービー制御」のstop();を選択。
スクリプト
ボタン「三滝寺」に

on (release) {
miyajima.gotoAndStop(1);
_root.screen.unloadMovie();
mitaki.gotoAndPlay(2);
}

ボタン「宮島」に

on (release) {
mitaki.gotoAndStop(1);
miyajima.gotoAndPlay(2);
_root.screen.unloadMovie();

}

mtaki mt1に

on (rollOver) {
if(_root.mitaki._currentframe>30){
gotoAndPlay(32);}
}
on (rollOut) {
if(_root.mitaki._currentframe>30){
gotoAndPlay(37);}
}
on (release) {
_root.screen.loadMovie("mitaki1.jpg");
}


ボタンがクリックされたら
miyajimaのサムネイルを初期状態にする(表示されていたら消す)
スクリーンに写真が表示されていたら消す
スプライトmitakiのエフェクトを実行(サムネイルが落下して並ぶ)




ボタンがクリックされたら
mitakiのサムネイルを初期状態にする(表示されていたら消す)
スクリーンに写真が表示されていたら消す
スプライトmitakiのエフェクトを実行(サムネイルが落下して並ぶ)





ロールオーバー時に
もし30FRAMEが経過したら、(サムネイルが下に並んだ後なら)
FRAME32-35を実行(拡大)

ロールアウト時に
もし30FRAMEが経過したら、(サムネイルが下に並んだ後なら)
FRAME37-40を実行(縮小)

クリックし、放たれたら
screenにmitaki1.jpgを表示

注)落下途中でロールオーバしてもFRAMEが飛ばないように
mitaki mt2 以降に

mt1と同じscriptをコピー・ペイストする。
ただし、gotoAndPlay( )のカッコ内のFRAME数を10ずつ増加させ、画像ファイル名を、mitaki2.jpg,,,,,mitaki10.jpgとする。
miyajimaについても全く同じ。
 SWiSHのお勉強に戻る