• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:同じMCが連続で再生されないようにランダム再生)

同じムービークリップのランダム再生方法と連続再生確率の下げ方

BlurFiltanの回答

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.3

#1&#2です。 > なぜstrinオブジェクトgが > StringとObjectでtureと判定されてしまうのでしょうか? それは単純に, 変数 a が Object であり,なおかつ String だからでしょう。 ◎参考:ヘルプの「String」より  ~引用~ > String > パッケージ トップレベル > クラス public final class String > 継承 String→Object その他の例も参考まで。 ◎参考:ヘルプの「Array」より  ~引用~ > Array > パッケージ トップレベル > クラス public dynamic class Array > 継承 Array→Object ◎参考:ヘルプの「MovieClip」より  ~引用~ > MovieClip > パッケージ flash.display > クラス public dynamic class MovieClip > 継承 MovieClip→Sprite→DisplayObjectContainer→ > InteractiveObject→DisplayObject→EventDispatcher→Object String オブジェクトも Array オブジェクトも MovieClip オブジェクトも これら3種のオブジェクトは 全て Object クラスを継承しているオブジェクトです。 ですから,どれも Object です。 【喩え1】 人間 は ホニュウ類ですか? → Yes.(true) 人間 は 生物ですか? → Yes.(true) 【喩え2】 鉛筆は 筆記用具ですか? → Yes.(true) 鉛筆は 文房具ですか? → Yes.(true) 鉛筆は 物体ですか? → Yes.(true) 次の文↓は間違っていますよね? 「人間は,ホニュウ類であるが,生物ではない。」 「鉛筆は,筆記用具ではないが,物体である。」 これ↓が正解です。 「人間は,ホニュウ類であるし,生物でもある。」 「鉛筆は,筆記用具である上に,物体でもある。」 ついでに ActionScript や JavaScript など普通のオブジェクト指向言語では Function(関数/メソッド) も Object です。 さらに ActionScript の場合は, BlurFilter(ぼかし)やDropShadowFilter(ドロップシャドウ)のようなフィルターも Object ですまた Tween など「プロパティの変化」さえも Object として扱うことができます。 。 さらに さらに ActionScript 3.0 では Event(例:マウスイベントやキーボードイベントなど) までもが Object です。 ◎参考【添付図】↓ 人間は,ホニュウ類であり,セキツイ動物であり,動物であり,物体である。

Fawkes
質問者

お礼

なるほど。詳細な解説ありがとうございました。勉強になりました。

関連するQ&A

  • ムービークリップを特定の組み合わせでランダム再生

    Adobe Flash Pro CS6 でAction Script 3を使っています。 今現在複数あるループムービーを特定の組み合わせでランダム再生する方法を考えています。 使用するムービークリップの数は全部で5つです。 mcA,mcB,mcC,mcD,mcEと5つあります。クリップの再生時間はmcDのみが20フレームでほかはすべて10フレームです。これらのムービークリップをある程度のランダム性を持たせて特定の順番で再生したいのです。特定の順番は以下のとおりです。 mcA - mcB mcA - mcB - mcB mcC - mcD - mcE mcC - mcD - mcD - mcE mcC - mcD - mcD - mcD - mcE この四通りの再生方法でムービークリップをランダムで再生し続けたいのです。 それぞれのクリップはループになっているのでmcBからmcA or mcC、mcEからmcA or mcCに繋がってもシームレスに再生し続けられる感じになっています。 どういった方法を用いるのが最善でしょうか? 今現在一つのレイヤーに (mcA - mcB)( mcA - mcB - mcB )(mcC - mcD - mcE)(mcC - mcD - mcD - mcE)(mcC - mcD - mcD - mcD - mcE) と言った感じにすべてのムービークリップを再生する順番に配置して、それぞれの区切りでフレームラベルを用意して、配列にフレームラベルをすべて入れて、その配列とMath.randomを組み合わせてフレームラベルをランダムで選び、再生位置を飛ばして再生し続けていますが、これだとレイヤーの管理がしにくいのでいまいちしっくりきません。

    • ベストアンサー
    • Flash
  • Fpsを増減させても一定のスピードで再生する方法

    Adobe Flash Pro CS6 でAS3を使っています。 質問はタイトルの通りなんですが例えばルートにフラッシュの再生速度を速くしたり遅くしたりするFps変更スイッチと mcA,mcBと2つのムービークリップがあるとして mcAはFPS変更の影響をうけるようにし、逆にmcBはFps変更の影響をうけないように2つのムービークリップを同時に再生をしたいのです。そのときmcA,mcB両方とも1フレームも欠けることなく再生したいです。 自分で試してみた方法は、mcBの中の全フレームに stop();を記述しルートに function mc_Play():void { mcB.play(); } setInterval(mc_Play,200); と記述して再生スピードを強制的に固定する方法を試したのですが、Fps変更ボタンを押してFps変更を行うときに、setIntervalで制御しきれていないのかもしれませんが、微妙にmcBの再生速度が遅くなったり速くなったりと変化してしまいます。何か他に良い方法はありませんでしょうか?例ではムービークリップの数を少なくしていますが実際のプロジェクトファイルでは、ムービークリップの数は20以上ありそれぞれが10フレーム以上の長さのアニメーションファイルを持っています。その20以上あるムービークリップの数個だけFPS増減の影響をうけないように再生速度を固定したいのです。

  • ムービークリップをボタン操作でランダムに再生

    Adobe Flash Pro CS6 でAction Script 3を使っております。 現在、異なるムービークリップを一つのボタンの操作でランダムに再生する方法を検討しております。 使用するムービークリップの数は全部で8つでございます。 これらはAfter effect で製作後adobe Media EncoderにてFLVに変換しております。 これらを同じものを連続で再生しないように、 そして一つのボタンをクリックするたびにムービークリップの再生が始まりますが、押さない限りはムービークリップの最初の画像で止まっているようにしたいのです。 例えば、ムービークリップの先頭に丸があって、それが徐々に四角になるムービーがあるとしますと、そこにあるボタンをクリックしない限りは写っているのは丸のままですが、 クリックをしたら四角に変化し、 そして次のムービークリップへ移動し、 そこでもまた最初と同じようにボタンをクリックしない限り始まらないというものにしたい次第でございます。 この場合、どういった方法を用いるのが最適でしょうか? お答え頂ければ幸いにございます。

  • 2つのMC(ドラッグで移動可能)から等しい距離にMCを配置したい

    ドラッグで移動可能な二つのムービークリップMCAとMCBから等しい距離の位置に三つ目のムービークリップMCCを配置したいです。 MCCはMCA、MCBがドラッグで移動されると、MCAとMCBへの距離が等しい位置(厳密に等しくなくても良い)に移動させたいです。(結果、3つのムービークリップは一直線上に並ぶ) オーサリングツールは『ParaFla!』ActionSctiptは1.0相応で以下の様に作ってみましたが、いつまで経っても落ち着かないので改善したいです。 ※スクリプトのスペースは全角で記述。 ※ベクトルの計算に『HAKUHIN's home page』で公開されているライブラリを使用しました。 http://hakuhin.hp.infoseek.co.jp/main/as/vector.html ■ライブラリの取り込み _root上に配置したスクリプトに #FILE "vec2d.as" と記述。 ■MCA、MCB _root上にMCAを深度0、[固定]で配置。 _root上にMCBを深度1、[固定]で配置。 MCAとMCBにテキストで●を配置。 MCAとMCBに以下スクリプトを記述。 on (press){  this.startDrag(); // ドラッグを開始する } - on (release, releaseOutside){  this.stopDrag (); // ドラッグを解除する } ■MCC _root上にMCCを深度2に配置。 MCCにテキストで●を配置し、以下スクリプトを記述。 onClipEvent (enterFrame){  c_to_a = _root.Vec2dCreate(_root.MCA._x-_x,_root.MCA._y-_y);  c_to_b = _root.Vec2dCreate(_root.MCB._x-_x,_root.MCB._y-_y);  length_c_to_a=_root.Vec2dLength(c_to_a);  length_c_to_b=_root.Vec2dLength(c_to_b);  if(length_c_to_a > length_c_to_b){   long=c_to_a;  }else{   long=c_to_b;  }  pos_c = _root.Vec2dCreate(_x,_y);  long=_root.Vec2dNormalize(long);  long=_root.Vec2dScale(long, 5);  pos=_root.Vec2dAdd(pos_c,long);  _x=pos.x;  _y=pos.y; } 上記のようにして作成したものを以下に置きます。 http://carken.web.fc2.com/osiete/test.html 動かしてみると、いつまでたっても、細かく動いて止まってくれません。 厳密に同じ距離でなくても良く、ある程度見た目にOKかなってところで止まるようにしたいです。 アドバイスありましたら、よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • ビットマップデータのメモリ使用量について

    Adobe Flash CS6 AS3を使用しています。 ライブラリにpng連番画像を読み込みそれをムービークリップ内に配置し、そのムービークリップをメインのタイムラインにおくという形でフラッシュを作っているのですが、これではメモリ使用量が大きくなりすぎるのでなんとかしたいと思っています。 例えばmcAというムービークリップの内部にライブラリにインポートしたA01からA10という10枚の連番png画像を10フレーム分並べます。そして同じくムービークリップmcBの内部にライブラリにあるB01からB10という10枚の連番png画像を同じく10フレーム分並べます。その二つのmcをメインのタイムラインに配置します。これでmcAとmcBの10フレーム分のアニメが再生されますが、mcAかmcBどちらか片方だけを表示するようボタン操作ができるようにしています。ここで問題なのですが、例えばmcAを表示しているときにmcBは可視性を切って非表示にしていますが、メモリ使用量が減りません。こういった時に非表示にしているムービークリップのために確保したメモリーを開放する、といったことはできないのでしょうか?removeChildなどを実行してもメモリ使用量はまったく減りませんでした。 連番画像とそれを収めるムービークリップの数が増えれば増えるほどメモリ消費量が増えていってしまうので困っています。表示されていない内部にビットマップデータを配置してあるムービークリップのメモリーを開放するよい解決策がありましたら教えてください。 それと少し話がそれますが、ライブラリにあるビットマップイメージををリンケージしそのビットマップイメージをaddChildでステージに読み、そのビットマップイメージをdisposeで削除した場合にメモリーが開放されるのを確認しましたが、今の自分のやりかたよりこういった別の方法からフラッシュを作っていったほうがメモリー使用量を抑えられたりするのでしょうか?もっと効率の良い方法がありましたらそちらも教えてていただけると助かります。宜しくお願いします。

  • flashのランダム再生

    flash8で質問です。 5つのswfをランダムに読み込み、 5番目までいったらまた、ランダムにはじめから再生したいです。 ランダムで5つまで再生終わったらはじめからループという考え方でいいのでしょうか? ***************************** 外部にswfが5つおいてあります。 (外部ムービーの名前は1.swf、2.swfのように数字の番号の名前ではありません。) ///main.fla/// 配列にして (1.swf、2.swf、3.swf、4.swf、5.swf)をランダムで取り出し、 .load_mcに読み込む。 ランダムに1~5までのムービーの再生が終わったらまた ランダム再生を繰り返す。 というようなflashを作りたいです。 どうすればいいでしょうか。

    • ベストアンサー
    • Flash
  • swfを連続再生したいです

    Flashを作成しているのですが、別々に作成したswfを連続で再生しなければならなくなりました。 flaファイルは2つともあります。内容が複雑で容易に1からライブラリに読み込んで、結合するのが困難です。出来れば1つめのFlashからActionScript等で、次のFlashを連続で再生出来ればと思います。 なにかよいアドバイスがあれば教えてください。 なお、作成ソフトはCS5 proです。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • Flash cs4 ランダム再生

    Flash初心者です。 やりたいことはホームページ上でアニメーションを再生させる際に、複数パターンのアニメーションをページをリロードするたびにランダムに切り替えるということです。 Flashにてアニメーションのタイムラインを複数パターンつくり、ランダム再生をActionScriptで制御するものを作成したいと思います。 アニメーションのタイムラインを作成しムービーシンボルとしたものを複数作成し、それをシーン1のタイムラインにて各フレームに配置して、1フレーム目にActionScriptにてgotoAndStop(ランダムフレームの記述?);とすればいいのかなと思っているのですが、正しいでしょうか? 現状ではアニメーションのムービーシンボルは必要なパターンだけ作成しました。 シーン1のタイムラインに配置まではしたのですが、ActionScriptの記述が素人なものでさっぱりわかりません。 どなたか教えていただけませんか? 自分なりにやってみたのですが、ランダム関数(?)以前にgotoAndStop()すら思うようにいきませんでした。 Flashはcs4を使用しております。ActionScript3.0のプロジェクトにして添付画像のように1フレーム目に gotoAndStop(10); としてみたのですが、パブリッシュしたswf ファイルは真っ白のまま何も動いてくれません。 gotoAndstop(10); としてみたらstopせずにタイムラインを再生しているようで、各アニメーションの最初のフレームだけが切り替わるものになってしまいました。 ともにコンパイルエラー 1180:未定義である可能性が高いメソッドgotoAndstopの呼び出しです といわれます。 ActionScriptが2.0と3.0とどちらがいいのかもわかってない状態ですが、ご教授願います。

    • ベストアンサー
    • Flash
  • ウェブサイト(ホームページ)で音楽(BGM)を連続ランダム再生したいのですが。。。

    はじめまして。 この度個人のウェブサイトを開くに当たりまして、音楽(BGM.mid)を流すのですが、その方法についてご質問があります。 連続再生方法と、ランダム再生をどうにかして一緒に出来ないものかと考えております。 詳しくいうと、ウェブの入り口からメニューに入って音楽を流すのですが、入るとランダムで音楽が流れ、2回ほどループした後に違う曲がまた流れ出すといった感じを考えています。 今の所、メニューに入るとランダムで1曲流れて、次の曲に行かずそれで終わってしまっております。 どのサイトを見ても、ランダム方法か同じ曲の連続再生しか載っていません。 色々な曲をランダムで何曲も流す、というのが希望なので、タグを作ってくださる方はいないでしょうか? もしくは載っているサイトを教えていただきたいです。 ずっと探したり試行錯誤してるのですが、なかなか突破口が見つかりません。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • Flash swfのランダム再生

    こんにちは。今回はswfのランダム再生に関して質問させていただきます. 使っているバージョンはFLASHCS3/AS2.0です. たくさんのランダム再生に関する質問を参考に進めていたのですが,どうしても自分の理想通りにならないので質問させていただきました. やりたいこと. →btn というボタンをクリックして,mcに3種のswfを3連続ランダム再生したい. 自分で試してつくってみたところ,btnをクリックすると確かにランダムに3種のswfを選択しているようなのですが,選択した1種のswfを永遠に再生するだけになってしまいます.もちろんbtnをクリックするたびにランダムに再生してほしいのですが,3種のswfを3連続再生してほしいのです(重複可). 「3連続再生したあと実行をやめる」というASもわかりません. どうかご回答願います.