• 締切済み

ランダム表示かつ重複しない

現在flashでクイズを作っています。 一回スタートさせれば問題はランダムに5問でます。 正解し続ければ5問でクリア。 間違えれば終了です。 そこでクイズに使う背景をランダム表示かつ、重複しないものにしたいと思っていますがうまくいきません。 dummy_mcを作ってそこに 現在背景用の1~10swfファイルをランダム表示させています。 ただこれだと同じ背景が続けてでてきたりしてしまいます。 これを一回のゲームで背景が重複しないで表示させたいと思っています。 アニメーション、フレーム移動などは理解していますが scriptになると正直わからないことだらけです。 現在勉強中でscriptはコピペしながら改造している状態です。 解決法をわかるかたがいらっしゃったらよろしくお願い致します。

  • Flash
  • 回答数3
  • ありがとう数1

みんなの回答

回答No.3

ご回答ありがとうございました。 すいません、ID・パスワードが間違えていたのかログインできず 削除、ご返信できず悩んでました。 申し訳ございませんでした。 またご回答ほんとにありがとうございました。

  • zari514
  • ベストアンサー率48% (26/54)
回答No.2

なぜ、違うHNでマルチポスト(...というのか?)してるんです? http://oshiete1.goo.ne.jp/qa3505099.html

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

flashは全く知らないので一般論で。 重複を避けるには通常シャッフルを使います。 1~10を並べておいてランダムに入れ替えを行います。 もっと効率がいいのは10個の中から1個をランダムに選び 10個目と交換します。 次に10個目を外して9個で同じ事を繰り返します。 最後に1個残るまでやって終わりです。 ただシャッフルは数学的に言うランダムでは有りません。 ランダムと言うのは同じ数字が続く確率もあるのです。

関連するQ&A

  • ランダム表示を重複させないようにするには

    はじめまして。 現在flashでクイズを作っています。 一回スタートさせれば問題はランダムに5問でます。 正解し続ければ5問でクリア。 間違えれば終了です。 そこでクイズに使う背景を重複しないものにしたいと思っていますがうまくいきません。 dummy_mcを作ってそこに 現在背景用の1~10swfファイルをランダム表示させています。 ただこれだと同じ背景が続けてでてきたりしてしまいます。 これを一回のゲームで背景が重複しないで表示させたいと思っています。 アニメーション、フレーム移動などは理解していますが scriptになると正直わからないことだらけです。 現在勉強中でscriptはコピペしながら改造している状態です。 解決法をわかるかたがいらっしゃったらよろしくお願い致します。

    • ベストアンサー
    • Flash
  • フレームに入るごとにカウントさせたい

    07/11/10 08:55 ランダム表示を重複させないようにするには で質問させてもらったものです。 zari514様に教えていただきなんとかかたちになってきましたが (ほとんどコピペですが・・・) 最後に dummy_mc.loadMovie(BARA[i]+".swf"); の[i]の部分ですが、 フレームにはいるごとにカウントさせることが出来ず困ってしまいました。 申し訳ございませんが解決方法ありましたらご教授頂ければ幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • ランダムで画像を表示させるには?

    環境はFlashCS5で、アクションスクリプト3.0を使用しています。 5枚の画像(インスタンス名:mc0~mc4)をランダムで表示させるムービーを制作しているのですが、 下記のスクリプトですと、ランダムで画像が表示されるのですが、画像の切り替えがループになってしまって、次から次へとランダムで画像が切り替わります。フレーム1に下記のスクリプトを記述し、フレーム1にムービーインスタンス「mc0」から「mc4」を配置しています。 function randomShowMC():void { for (var i:int=0; i<5; i++) { this["mc" + i].visible = false; } var rnd:int = Math.floor(Math.random() * 5); this["mc" + rnd].visible = true; } randomShowMC(); var myTimer:Timer = new Timer(3000); myTimer.addEventListener(TimerEvent.TIMER ,function(){randomShowMC()}); myTimer.start(); このスクリプトを改良?改造?して、ランダムの画像が1回のみ…つまり、おみくじみたいに、(mc0~mc4の画像を)ランダムで1回のみ画像を表示させたいのです…表示後の画像が切り替わらずそのままで停止させたいのです。 又は、ムービーインスタンス「mc0」から「mc4」の画像をランダムで表示させ、最初に表示された、その画像で停止させるスクリプトを新規に記述しても構いませんので、ご指導・アドバイスをお願い致します…。 どなたか、解る方がいましたらランダム画像表示で1回表示のみのループしないスクリプトを教えてください。よろしくお願い致します…。

    • ベストアンサー
    • Flash
  • Flash8 ムービークリップをランダムに表示(更新する度に順番を変更)

    他の質問を確認させて頂いたのですが「更新する度に順番を変更」という部分で行き詰まり、今回質問させて頂きました。色々と調べたのですが、同じ質問が存在していたら申し訳ございません。 今回FLASHの作成で、1つのSWF内で3つのムービークリップ(mc_01、mc_02、mc_03)をランダムな順番で表示させたいというものです。ランダムに表示させるまでは、何とか行き着いたのですが、行き詰まったのは「更新の度に前回と順番が重複しない」ということです。 現在の状況は、下記の通りです。 mainというムービークリップに3つのムービークリップ(mc_01、mc_02、mc_03)をランダムに表示。 スクリプトは、下記の通りです。 var a = Math.floor(Math.random()*3)+1; main.attachMovie(["mc"+a], "mc", 0); 現状だと、更新する度にランダムに表示されますが、更新を押した際に、先頭が前回と同じムービークリップになってしまうことがあります。 (一回目の更新:mc_02 → mc_01 → mc_03) (二回目に更新:mc_02 → mc_03 → mc_01) この並びをアクションスクリプトで変えることは可能なのでしょうか?可能だとすれば、どのようなスクリプトを記述、もしくは参考にすれば良いでしょうか? 初心者な質問で申し訳ございませんが、宜しければどなたかご回答のほど宜しくお願い致します。

  • フラッシュバナーのランダム表示について

    以下のスクリプトでフラッシュバナーをランダム表示させています。 loadMovie(1 + random (4 ) + ".swf", AAA); このランダム表示の比率を変えたいとき、例えばですが、4つのファイルを 1:1:1:3の割合で表示させるなどの場合、どういうスクリプトを書けばいいでしょうか? また、ファイル名は現在 1.swf、2.swf、3.swf・・ としていますが、ファイルを差し替えた際にキャッシュが残るので、それぞれ固有名詞にしたいのですが、 その場合の方法も教えてください。

  • ランダムに複数のリンク、重複なし。

    http://www.eweb-design.com/affiliate/0303_jr.html こちらのサイトのソースを参考にランダムに複数のリンクを表示したいと考えています。 このソースだとランダムに複数のリンクを表示できたのですが、重複しないように表示ができません。 そこでいくつか調べてみたところ、重複しないようにランダムに複数表示するスクリプトを発見しましたが、あまりシンプルに作成されていないため使用するのをやめました。 やはり、重複しないという条件をつけるとスクリプトは長くなってしまうのでしょうか? このスクリプトは諦めて他のスクリプトを試すべきなのでしょうか? JavaScriptに詳しい方、よろしくお願いします。

  • Flashで背景をランダムに変えたいんですが‥‥

    外部のSWFファイルを読み込んで、それをランダムに表示させたいんですがどうも上手くいきません。 Flashがバージョン5のため、画像のみを貼りつけたSWFファイルを読み込ませて、それを背景に使おうとしています。 ホームページに載せて、見るたびに背景を変えようという狙いです。 それで、色々と調べてみてスクリプトもいじって外部ファイルを読み込んで表示はしてくれるようになったんですが、表示の一番上に来てしまってメニューのボタンなんかが隠れてしまうのです。 これが、書いてあるスクリプトです。 onClipEvent (load) { no = Math.floor(Math.random()*3)+1; loadMovieNum("haikei"+no+".swf", 0); } スクリプトにはどうも分からない点が多いので、細かく説明していただけるとありがたいです。 修正点や、「こういうやり方もある」っていうのがありましたら、ご指導の方をよろしくお願いします。

  • FLASHを使って、複数のswfとjpgをランダム表示させたい

    現在、10個程度のswfファイルと60個程度のjpgファイルがあります。それらをjavascriptを使わずに(基本的にはFLASHで)、アクセスするたびにHTML上でランダム表示させたいと考えています。 これまで、ひとつのswfファイルをベースにして、以下のアクションスクリプトを使って、10個のswfファイルをランダム表示させることには成功しています。 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //1~3の整数の乱数を,変数 ransuu にセット ransuu = Math.floor(Math.random()*13)+1; //ムービー内に ransuu+".swf" をロード this.loadMovie(ransuu+".swf"); :::::::::::::::::::::::::::::::::::::::::::::::::::::::::: たぶんこのスクリプトを発展させれば、jpgもランダム表示できるようになると思います。 ランダム表示させたい複数のswfファイルとjpgファイルは同じ階層にあります。HTMLはそのひとつ上の階層にあります。ベースとなるswfファイルは、複数ランダム表示用のファイル群と同じ階層でも良いし、もしくはHTMLと同じ階層でも良いことにします。 どのような方法があるか、教えてください。 *ちなみに、ベースとなるswfファイルを複数ランダム表示用のファイル群と同じ階層において、そのひとつ上の階層にあるHTMLから読み込んだ場合、うまく表示されませんでした。このアクションスクリプトを引用した元のウェブサイトでは、HTMLも、ベースとなるswfファイルも、ランダム表示される複数のファイル群も、全て同じ階層にあるという前提になっていました。

    • ベストアンサー
    • Flash
  • FLASHを使って、複数のswfとjpgをランダム表示させたい

    現在、てもとに10個のswfファイルと60個のjpgファイルがあります。 それらを、ひとつのswfファイルをベースにしてランダムに表示させたいと考えています。 ベースとなるswfを置くHTMLは、それらの画像ファイル群のひとつ上の階層にあります。 swfファイルをランダムに表示するアクションスクリプトは以下のようにできました。これを参考にjpgにも対応するようにすればいいと思うのです。 //1~3の整数の乱数を,変数 ransuu にセット ransuu = Math.floor(Math.random()*13)+1; //ムービー内に ransuu+".swf" をロード this.loadMovie(ransuu+".swf"); どうぞよろしくおねがいします。

    • ベストアンサー
    • Flash
  • 複数のswfファイルをランダム表示させたい

    複数のswfファイルバナーがあって、トップページに これらのバナーをランダム表示させたくて、ランダム 表示用のswfファイルを用意したのですが、どうしても 表示できません。 ランダム表示用swfファイルの1フレーム目には、 下記の通りASを書いてみました。 swfList= new Array("aaa.swf","bbb.swf","ccc.swf"); listLength=swfList.length; rndNum= Math.floor(Math.random()*listLength); loadMovie(swfList[rndNum],"_root"); このswfファイルも、他のバナー用aaa,bbb,ccc.swfファイルも 同じフォルダ内に保存しています。 ちなみに当方Flash MX2004 professional使用です。 どこが間違っているか、どなたがご教授下さいませ。