• 締切済み

ランダムな画像と表示回数

こんにちは。 以下のような仕組みのFlashを作成したいと思っています。 1.30枚の画像があります 2.文章が10個あります まず上記2の文章を、各7秒ぐらいで次の文章へ切り替えたいと思っています。 この文章の表示順は固定です。 このflash自体は7秒×10個で、合計70秒となります。 次に、文章をそれぞれ表示させる際に、バックに上記1の30枚のうちいずれかの画像を表示させたいと思っています。 但しこの画像の表示順はランダムで、尚且つ一度表示した画像は表示されないようにしたいです。 つまり、文章が10個なので、画像は30個の中から10枚を毎回ランダムで表示させるといった感じです。 文章自体は画像の上に配置します。 文章が7秒で切り替わる際、画像も同時に次の画像へと切り替わります。 最後に文章の10個目が表示された時(スタートから70秒後ぐらい)に、その10個目の文章とその時の画像(ランダム)でムービーはストップさせたいです。 これらの動作を実現したいのですが、アクションスクリプトが殆ど初心者なので悩んでいます。 もし宜しければサンプルコードなど、ご教示頂けますと幸いです。 宜しくお願いいたします。

  • Flash
  • 回答数2
  • ありがとう数2

みんなの回答

  • taku2888
  • ベストアンサー率60% (15/25)
回答No.2

まず、ランダムで10個まで重複させずに表示は、 配列を作っておき、 一回表示されるたびにランダムの範囲を縮めていけば効率が良いかも知れません。 他にもいろいろ有るので参考としてですが、 0から9の乱数を発生させ 1回目に5番の画像が表示されると。(0-9として) 配列に[0][1][2][3][4][6][7][8][9] とします。 次は8までの乱数を発生させます。 7だと8番の画像を表示させ 配列に[0][1][2][3][4][6][7][9] として 一つづつ減らして行くと万が一乱数が同じでも大丈夫です。 10回目で止まらないのは不明です。 とのようにstopしているのでしょうか。

  • taku2888
  • ベストアンサー率60% (15/25)
回答No.1

この質問ですと、まるくたソースを教えてくださいととれてしまいます。 質問はいったいどの部分でしょうか。 ランダムに表示させる部分ですか。 同一人物が10何回来たかですか。 次の文章に切り替えたい部分ですか。 何が不明なのかわかりません。 初心者では何がわからないのかわからない部分も多いと思いますが、 何処まで自身で試して何処が不明なのか明確にして頂かないと 回答者も何を回答して良いのか困惑すると思います。 ASが初心者と言うことであれば、ソースはどのレベルのソースが必要ですか。 各々の部分でコメントが必要でしょうか。 丸振りと勘違いされないようにも質問は明確にした方が回答しやすいです。

renaun
質問者

補足

すいません。 肝心なわからない箇所を書いていませんでした>< 具体的に言いますと、 ・一度表示された画像は表示されない(ランダムの重複阻止) ・10個目の文章とその時の画像(ランダム)でムービーはストップ この二点がわかりませんでした。 onClipEvent (load) { Max = 30; Sec = 7; Path = "photo/"; n = depth=cnt=0; function loadPic() { n = Math.floor(Math.random()*30)+1; depth++; mcName = "mc"+depth; this.attachMovie("pic", mcName, depth); this[mcName].loadMC.Loaded = false; this[mcName].loadMC.loadMovie(Path+"p"+n+".jpg"); if (depth>2) { this["mc"+(depth-2)].removeMovieClip(); } } loadPic(); } http://hfm-kenchan.com/Lesson/log_qa/D0708311.htm 上記のURLを参考にして、ソース内にランダムにするという事を付け加えて、ランダムにする事は出来たのですが、画像が重複になる・10個目でストップとならずに更に再生が続いてしまう、という点がありご質問させていただきました。 言葉足らずですいません。また不足な点がありましたら出来る限り追記させていただきます。

関連するQ&A

  • ランダムで画像を表示させるには?

    環境は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
  • 画像のランダム表示

    こんにちは。 フラッシュで、画像をランダムに表示させたいのですが、 スクリプトの書き方がわかりません。何方か教えていただけないでしょうか? 構成は ステージ上の【表示ゾーン(zon_mc)】ムービークリップの中に【バリ表示(bari_mc)】ムービークリップを作っています。 トップのステージのタイムラインとは別に画像を表示、非表示させたいのでこのような形になってます。 表示させたい画像は【bari】ファルダの中の【bali01.jpg】~【bali06.jpg】です。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • 画像がランダムに表示されるFLASH

    いつもお世話になっています。 以下のようなFLASHを作りたいのですが、やり方がわからず困っています。 (1)リロードするたびにランダムで切り替わる画像1~6がある (2)画像の横にボタン1~6があり、マウスオーバーするとそれぞれ画像1、画像2…と表示される (3)ボタン1~6をクリックするとwebページ1~6へジャンプ(リンクさせている) 上記目的のうち、(2)(3)については完成しています。具体的にはAフレームには画像1、Bフレームには画像2…と配置し、ボタン1~6のアクションスクリプトにそれぞれ「マウスオーバー時にAフレームに飛ぶ」と記述しています。そしてメインのタイムライン1フレーム目にはアクションスクリプトに「ボタン1がクリックされたらwebページ1へ、ボタン2がクリックされたらwebページ2へ…」と記述しています。 これで(2)(3)の目的は果たせており、問題は(1)です。 ランダム表示される画像があり、ボタンのマウスオーバーで指定した画像が表示され、クリックでwebページへとぶ、ためにはどこにどんな記述をすれば良いのでしょうか? ちなみに作ったFLASHがサイトのトップページの一部となり、クリックで飛ぶwebページはそのサイト内です。 アドバイスいただけると助かります。 どうかよろしくお願いします。FLASHは上記がほぼ初めての挑戦である初心者です。

  • 画像をランダムで表示させて一定時間停止させたい

    FlashCS4でAS3.0を使用しております。 添付画像のように「画像レイヤー」には10フレーム毎に画像を入れてあります。50フレームですので5画像を入れてあります。「ラベルレイヤー」には、先の画像におのおのにラベルを付けてます。「ASレイヤー」には各画像を一時的に停めておくためのスクリプト「stop();」を記述してあります。(10、20、30、40、50フレーム) このままですと、ムービーをプレビューした場合には(10フレームの)1枚目の画像が表示されて停止している状態になります。そこで、エンターキーを押すと2枚目の画像が表示されて停止…さらにエンターキーを押すと…3枚目の画像が表示されて停止…順番どおりの表示後停止となります。このムービーをプレビューした際に、画像がタイムラインの順番に関係なくランダムで表示されて、しかも一定時間停止(例えば10秒間)させた後、再びランダムで表示…10秒間停止後に三度ランダム…と言うようにエンドレスでランダムで表示させて10秒間停止後に、またランダム…のようにしたいのですが、1フレームのスクリプトの記述内容をご指導・ご指示願います。よろしくお願い致します。

    • ベストアンサー
    • Flash
  • Flash Lite1.1のランダム画像に時計を付けたい

    はじめまして。 今、Flashの勉強を自宅で独学している初心者です。 携帯Flashの作成をしているのですが、 ランダムで取得した画像にデジタル時計を付けたんです。 取得する画像をレイヤー内に幾つか用意し 画面遷移を防ぐためにstopを使っているので、 初期画面内に配置しているデジタル時計が同時に止まってしまいます。 そもそもの作り方が間違えているのかと思い いろいろ調べて見たのですが、解決方法が見つかりません。 壁紙はランダムに、時計はリアルタイムで表示させるには どうしたらいいのでしょうか? どなたか教えていただけると助かります。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • 画像がランダムに表示されるFLASHを作りたい

    こんにちは、お世話になります。 下記FLASHを作りたく以前も質問させていただいたのですが、どうしてもうまくいかないところがあり、再度投稿させていただきます。 (1)リロードするたびにランダムで切り替わる画像1~6がある (2)画像の横にボタン1~6があり、マウスオーバーするとそれぞれ画像1、画像2…と表示される (3)ボタン1~6をクリックするとwebページ1~6へジャンプ(リンクさせている) (4)画像1~6をクリックするとwebページ1~6へジャンプ(リンクさせている) まず画像を表示させるために一定区間をループ再生するフレームアクションを画像分(=6個)作りました。 各々frame1、2…とフレームラベル名をつけ、 ボタン1~6には on(rollOver){ this. gotoAndPlay("frame1"); } と記述しています。(ボタン1の例) そして1フレーム目に stop(); button1.onRelease = function(){ getURL("リンク先URL", "_self"); } gazou1に on(release){ getURL("リンク先URL", "_self"); } としています。これにより(2)(3)(4)は実現できています。でも(1)のランダムが全然分かりません。 ループ再生のフレームの前に7フレーム追加し、 1は空白キーフレーム 2はgazou1 3はgazou2… と配置し、フレーム1のアクションに stop(); button1.onRelease = function(){ getURL("リンク先URL", "_self"); } a=Math.ceil(Math.random()*6)+this._currentframe; gotoAndStop(a); と書き加えました。すると、画像が何も表示されないのです。IE7やSafariでは更新ボタンを押せばランダムで画像が現れるのですが、更新ボタンを押さなければ表示されませんし、Operaでは一度ボタンにロールオーバーさせなければ表示できません。 ランダム関数がよく分からずにやっているからダメなのだと思いますが、わからなすぎて何を勉強すればいいのかも分かりません。 とにかく時間がないので困っています。 どこが間違っているのかお教えいただけないでしょうか? 長文で申し訳ありません。どうかよろしくお願いします。

    • ベストアンサー
    • Flash
  • 画像をランダムに並べて,画像を作る方法

    ある画像1をランダムに配置して、適当なサイズの画像2にするといったことをしたいです。 画像1を配置する際には重なりを許します。 画像1をランダムに並べるやりかたは分かるのですが 作成したい画像2で 「まだ空白の(貼り付けられていない)箇所がある」 という判定をどのようにすれば良いか分かりません。 ちょっと分かりづらいかもしれませんが、 分かる方、お教えください。

  • 画像をランダムに表示させたい

    はじめまして、質問させていただきます。 flashで、いくつかのムービークリップをランダムに表示させようとしています。 いろいろ調べてみて、swfファイル単体では表示させれるようになったのですが、なぜかhtmlで出力させようとすると何も表示されなくなってしまいます。タグが間違ってるのかと思って他のフラッシュでも試してみたのですが、このフラッシュだけが表示されません。 ためしにバージョンアップもしてみましたがダメでした。 よろしかったらご回答お願いします。 htmlに貼り付けたタグ <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=*,*,*,*" WIDTH="300" HEIGHT="300"> <PARAM NAME=movie value="img/top/random.swf"> <PARAM NAME=quality value=high> <PARAM NAME=bgcolor VALUE=#ffffff> <PARAM NAME=loop value=true> <PARAM NAME=wmode VALUE=transparent> <EMBED src="img/top/random.swf" quality=high TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" WIDTH="300" HEIGHT="300" loop=true> </EMBED> </OBJECT> フラッシュのスクリプト 1フレーム目に画像を置かずにフレーム自体に gotoAndStop(2 + random ( 4 )); 2フレーム~5フレームにムービークリップ

    • ベストアンサー
    • Flash
  • 画像のランダム表示

    ページの更新時に画像をランダムに表示し、かつその画像をクリックするとランダムに画像が変わっていくようにしたいのですが・・。 まったくの初心者なので、答えまで教えていただけますと幸甚です。 よろしくお願いいたします。

  • ランダムに画像と文章を表示

    バナーをクリックするたびに、ポップアップでランダムに画像と説明文を表示させたいのです。 A.B.Cの画像とa.b.cの文章があって、画像と文章の組み合わせは変えたく無いのです。 A画像+a文章、B画像+b文章、C画像+c文章の組み合わせをランダムに表示させたいのですが、どのようにすればよいのでしょうか?