LOAD MOVIE でランダムに.swf ファイルを選択し
連続して表示させる。



Flash の .swf ファイルをアクションのLOAD MOVIEを使い、数珠繋ぎに連続再生することは以前ここに書きましたが、今回はその.swf ファイルをランダムに繋げていく方法を試してみました。現在、TopPage で使用しているものがそれです。( 細かい制作手順はここでは省略させて頂きます )用意した.swfファイルに0から5の数字を割り当て(0.swfのように ) それぞれのMOVIE 終了時にランダムに選んだ次のファイルへと繋がるようにしておきます。「しておきます。」と言いましてもこれがなかなか難解ですね(^^;プログラミングの知識が皆無のわたしには、ここからは手探り。数式だの変数だのと出てきてもさっぱり分かりません...が、それなりに努力をしてみます。

Flash4はアクションに「数式」というものを使用することが出来ます。下の画像がその設定画面です。右の窓横にあるABCと書かれたボタン(今は既に〓数式に切り換わっています)をクリックするとメニューが出て来ます。初めはABC リテラル文字列と言うものになっていますが、それを〓数式に変更します。プログラミングをされる方には笑われてしまうかもしれませんが、このボタンを押すだけで最初はドキドキしたものでした。そうして、ここに、呪文のような(?)数式を打ち込みます。「Random(6) & ".swf"」。 「Random(X)」と言うのがランダムな数字をつくる「関数」らしいです...。0から(X-1)までの数字を毎回ランダムに決めてくれるサイコロのようなもの。この場合は、0.swfから5.swfまでの6個のファイルの中からランダムに選ぶと言うことになります。右ウィンドウに書き込まれた数式が、Flashの理解出来る形となり自動的に左ウィンドウに記述されます。
次に、ファイルを" 同じ場所で次々差し換えます" ので、下の、場所-レベルを0に設定します。最初は1になっていますので、注意が必要です。以前わたしは、それを知らずに1のまま書き出してしまったことがあります。MOVIEはちゃんと差し換わりますが、差し換え前のMOVIEも一つ下のレベルで同時にLOADされてしまいます。レベル0以外の使い方はまだ未習得なのでこれ以上のことを書く事は出来ませんが、とにかく0にしておきましょう!(笑)この部分は、なにか分かった時点でここに書くかもしれません。


次に、ちょっとだけですが、恐れ多くも知識の無いままこの関数、「Random(6) & ".swf"」に色々書き足して試してみることに致します。既にあのオソロシイ数式ボタン〓も押してしまったわけですし、分からないなりに少しは理解の手助けになるかもしれません。所詮素人の浅知恵的なものなので識者の方は笑って下さいね (^^;; そうして、出来ることならここはこうした方がいいですよ!とか、そこは全然間違ってますよ!などと優しく御指導を頂けたりすると非常に有り難く思います。苦労して(笑)恥をさらした甲斐があると言うものです。何卒、宜しくお願い致します。 m( )m

さて、6つある.swfファイルそれぞれに、以上の設定をしてランダムにファイルを読み込ませる事は成功しました。同じファイルばかり連続して2度、3度出たりする事もあり、ちょっと不満も残りますが...、それでもランダム!...と言うことなのでしかたありません(苦笑)。そこでちょっと問題発生。6つあるファイルの中に退屈すぎてあまり頻繁に見たくないMOVIEを発見(...って、全部自分で作ったものなのですが・・・)何とか選ばれる頻度を減らしたい。今知っている範囲での解決策は、以下に上げる方法くらいしか思い当たりありませんでしたので、とりあえず試してみることにします。

まず退屈なMOVIEを0.swfと言うファイル名に置き換える(交換する)。全く出なくなってしまうのも可哀相なので6つのファイルのうちの半分、3つのファイル( 0.swf を含む)の数式を「Random(5)+1 & ".swf"」に変更する。これで、0.swfを除いた1.swf〜5.swfまでの5つのファイルからランダムに選択する設定となる...はず (^^;; ... 0.swf にも「Random(5)+1 & ".swf"」が設定されますので、もしそれが選ばれても重複再生は絶対に無くなります。試してみたら、うまく行ったみたいでちょっと嬉しかった(^^)ほ...。
知識があれば、もっとスマートで良い方法がきっとあるのでしょう(笑)でも現状ではこれしか出来ませんのでしかたがない。一応、目的は達しているので良いことにします。
下手でも自分で考えることはとっても意義のあることなのだ!と自己満足してみるのもいいよね(^^;

最後にレポートらしい事をひとつ。今回もまた、MAC版IE 4.0 以前のバージョンではこの機能が無効となってしまいました。別ディレクトリへの相対パスの問題を考え、HTMLファイルと同一ディレクトリ内に全ての.swf ファイルを置いてみたのですが、「Random(X) & ".swf"」自体が読み込まれないようです。4.5以降のバージョンからはうまく表示されることを確認致しました。いつも問題になるのはMAC版IE なのですね...



Back to Flash Report Index back to Top Page