メイン 迷える子羊の部屋【初心者専用】 ムービークリップの途中から再生 | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
lonpari | Åê¹ÆNo.23415 投稿日時: 2006-2-4 0:15 |
新米 居住地: 投稿: 3
使用環境:
MacOSX FlashMX2004 |
ムービークリップの途中から再生 質問です。
Flashの7を使っています。 1フレーム目に同じムービークリップを 3つ配置しているのですが ■一つ目のムービークリップは普通に繰り返しで再生 ■2つ目のムービークリップは(ムービークリップ内の)5フレーム目から再生して繰り返し ■3つ目は2回繰り返したら停止 としたいのですが どこに何を記述すればいいかわかりません。 どなたか助けて頂けないでしょうか。。。 よろしくお願いします。 |
rin-ko | Åê¹ÆNo.23441 投稿日時: 2006-2-5 15:37 |
職人 居住地: 東京 投稿: 397
使用環境:
MacOSX10.5/10.4 WinXP SP3 MX2004Pro/CS3 |
Re: ムービークリップの途中から再生 こんにちは。
以下はそれぞれ別の問題と考えて、一つずつ取り組まれた方がよいかと思います。 1)一つ目のムービークリップは普通に繰り返しで再生 2)2つ目のムービークリップは(ムービークリップ内の)5フレーム目から再生して繰り返し 3)3つ目は2回繰り返したら停止 そのうえでまず、1)は問題なく出来ることだと思うのですが、1)に関しても躓いていらっしゃいますか? もしそうでしたら、ムービークリップのどこにどのようなアクションを書いているのか、など構成をもう少し詳しくご説明いただいたほうがよいと思います。 2)に関しては、「MovieClip.gotoAndPlay()」を用いることになります。もし意味がわからないようでしたら、ヘルプや参考書籍などで意味と使い方を確認されるとよいでしょう。 3)に関しては、変数の扱いとifによる条件分岐が必要になります。 考え方の一例ですが、まず3つ目のムービークリップの再生回数を入れて管理するための変数を定義します。 次に3つ目のムービークリップの再生ヘッドが最終フレーム(_totalframes)に来た時に、変数の値が規定値であるかどうかをifで判定して、規定値であればthis.stop()し、未満であれば変数の値を変更すればよいでしょう。 もちろんこれ以外にも方法はあります。 変数管理や条件分岐などが難しければ、ムービークリップをふたつ繋げたムービークリップを作って配置するという手もあるかと思います。 またわからない点がでてきましたら、具体的に問題点を絞ってご質問なさるとよいでしょう。 |
lonpari | Åê¹ÆNo.23444 投稿日時: 2006-2-5 18:00 |
新米 居住地: 投稿: 3
使用環境:
MacOSX FlashMX2004 |
ありがとうございます! ありがとうございます。
出来ました!嬉しいです。 2)に関してなのですが その後の報告です。 教えていただいてから勉強のため、他の方法も いろいろ試してみたのですが、 ムービークリップ自身に onClipEvent (load) {gotoAndPlay(5);} と書いても動いたのですが これも正解なのでしょうか? 「ムービークリップ」が読み込まれた時に5フレームへ 行って動いてね。って命令?? けど、onClipEvent (enterFrame) {gotoAndPlay(5);} では、動きませんでした。 enterFrameの意味はまだ調べてないので 調べたいと思います。 3)に関してですが、「考え方の一例」との事で 他にも考え方(アイデア)次第で同じ動作ができるかと 思うと、楽しくなってきました。 今回はrin-koさんの考え方でやらせていただきました。。 ありがとうございました。 それでは失礼します。 |
ひろゆき | Åê¹ÆNo.23445 投稿日時: 2006-2-5 18:10 |
ちょんまげら 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CC Safari 6.1 |
Re: ありがとうございます! 引用:
けど、onClipEvent (enterFrame) {gotoAndPlay(5);} 「Flash ActionScript Helper: システムイベント(内部イベント)」が 参考になるでしょうか。
ムービークリップが再生されている間、処理の部分が実行され続けます。 なので、
「5フレーム目へ移動した」途端、 「5フレーム目へ移動して再生せよ」という指令がくるので、 「5フレーム目から移動できなくなる」ことになります。
|
野中文雄 | Åê¹ÆNo.23446 投稿日時: 2006-2-5 18:19 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: ありがとうございます! 「他の方法も」ということは、その前にMovieClipを配置したタイムラインのフレームアクションにMovieClip.gotoAndPlay()のステートメントを書かれたのでしょうか?
MovieClipインスタンス自身のonClipEvent (load)イベントハンドラも、インスタンスがフレームに登場したとき実行されますので、基本的に同じ結果が得られると思われます。 引用: lonpariさんは書きました: onClipEvent (enterFrame)ハンドラは、フレームアニメーションの場合は、フレームが「移動」するごとに実行されます。けれど、正確には再生ヘッドが停止していても、描画が更新されるたびにつまりフレームレートで(デフォルトなら12fps=1秒間に12回)処理が行われます。 ですから、デフォルトなら1秒間に12回の割合で、第5フレームに移動するという処理が繰返されています。その結果、第5フレームから動かないという状態になったのでしょう。 引用: けど、onClipEvent (enterFrame) {gotoAndPlay(5);} |
lonpari | Åê¹ÆNo.23459 投稿日時: 2006-2-6 2:04 |
新米 居住地: 投稿: 3
使用環境:
MacOSX FlashMX2004 |
ありがとうございます。 ひろゆきさん、野中さん、丁寧にありがとうございます。
大変、為になります。 『(onClipEvent (enterFrame)ハンドラは)描画が更新されるたびに つまりフレームレートで(デフォルトなら12fps=1秒間に12回)処理』というのは 単純計算で正しいスクリプトを描いたときよりも 12倍負荷がかかってしまうのですね。 今やっているコトが、携帯用の待ち受けフラッシュなので ファイルサイズだけでなく ワークメモリも1000KB以下、と制限が かかっているため 大変参考になります。 皆様、丁寧にどうもありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |