- 締切済み
ムービークリップの制御について
スクリプト初心者です。 ムービークリップの制御について、まったくわからず困っています (1)シーン1、5フレーム目にムービークリップ、インスタンス名a_mc配置 (2)a_mcの中にb_mc配置。b_mcをクリックすると→a_mcの1フレーム目に移動。もう1度b_mcクリックすると→a_mcの10フレーム目に移動。もう1度b_mcをクリックすると→a_mcの1フレーム目に移動・・・と、 b_mcをクリックするごとにa_mcの1フレーム目、10フレーム目、1フレーム目・・繰り返す制御をしたいのですが。。 どなたか分かる方いましたら 教えてください!!
- みんなの回答 (1)
- 専門家の回答
みんなの回答
「最初に b_mc をクリックするとき,a_mc のタイムラインはどこを再生しているのだろう?」 という, ちょっと状況が不明な点がありますが, 「b_mc」に次のように書く感じで行けませんか↓? ------------------------------- on (release) { // もし親のフレームが 1 でなければ if (_parent._currentframe != 1) { // 親のフレームを 1 に戻す _parent.gotoAndStop(1); // 親のフレームが 1 であれば } else if (_parent._currentframe == 1) { // 親のフレームを 10 に進ませる _parent.gotoAndStop(10); } } ------------------------------- 上は状況によってうまくいかないかもしれません。 こっちの方が汎用的な気がします↓。 ------------------------------- onClipEvent (load) { // 変数 flag(単なる旗印) の初期化 var flag = 0; } on (release) { // もし flag が 0 であれば if (flag == 0) { // 親のフレームを 1 に戻し _parent.gotoAndStop(1); // そして flag を 1 にする flag = 1; // もし flag が 1 であれば } else if (flag == 1) { // 親のフレームを 10 に進ませる _parent.gotoAndStop(10); // そして flag を 0 に戻す flag = 0; } } -------------------------------
お礼
ありがとうございます!! 説明不足な上、とても丁寧に教えていただきまして 助かりました。 onClipEvent (load) { var flag = 0; } on (release) { if (flag == 0) { _parent.gotoAndPlay(1); flag = 1; } else if (flag == 1) { _parent.gotoAndPlay(10); flag = 0; } } こちらで無事解決しました。 どこで検索しても全く分からず困っていたので・・。 もっと勉強します・・・。。 ありがとうございました!