数秒間のウェイトを入れたいとき、
[frame 1]--------------------------
start = getTimer();
limit = 2000;
[frame 3]--------------------------
if( getTimer() > start + limit ){
gotoAndPlay( _currentFrame +1 );
}else{
gotoAndPlay( _currentFrame -1 );
}
というようにぐるぐる回しているのですが、頻繁に使う処理なので
サブルーチンにしようと思います。
ルートのタイムライン 1フレーム目に
function wait( start, limit, nowframe ){
if( getTimer() > start + limit ){
gotoAndPlay( nowframe +1 );
}else{
gotoAndPlay( nowframe -1 );
}
}
と書きムービークリップの中から
wait( start(前のフレームで定義), 2000, _currentFrame );
呼び出したのですが、goto先がムービークリップの中ではなく
ルートタイムライン上のフレームになってしまいます。
よくよく考えれば当たり前です。
goto~をサブルーチン化して、呼び出し元のタイムラインに対し
処理させるということは出来ないのでしょうか。
No.1ベストアンサー
- 回答日時:
まず、呼び出し側では、
_root.wait( start(前のフレームで定義), 2000, _currentFrame);
としなくては動かないと思います。
# 現状で動いているなら、無視して構いませんが…。
また、ルートに記述する関数は、引数を一つ増やし、
function wait( start, limit, nowframe, mcName){
if( getTimer() > start + limit ){
eval(mcName).gotoAndPlay( nowframe +1 );
}else{
eval(mcName).gotoAndPlay( nowframe -1 );
}
}
とすれば、正しく動くのではないでしょうか?
呼び出し元のムービークリップを指定してやるわけです。
# 試していないので、自信はないですが。。。
ありがとうございます。教えていただいた方法でうまくいきました。
また、下記のように記述してグローバル関数にしました。
_global.wait = function( start, wait, nowFrame, mcName ){
しかし階層が変わったりすると使い回せないのが難点ですね。^^;
指定したパスから現在位置を探すような命令があればいいんですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AfterEffectsでイージーイーズ...
-
Mayaレンダリングの中断
-
aviutlで最後まで動画が読み込...
-
複数のgifアニメをレイヤーで重...
-
GoogleChromeでレイアウトが左...
-
XMLを作成してもタグしか表示さ...
-
掲示板からIPアドレスってど...
-
改行できる・できない入力ボッ...
-
テーブルの幅を固定するとnowra...
-
ZARAの商品のタグの外しかた
-
Macで見るとページが崩れます。
-
H1タグに改行の<br>を使う
-
WEBページからのメッセージをVBAで
-
ASP.NET TextBox 入力制限
-
<br style="clear:both;">って...
-
Excel VBA 見本通りに...
-
<br>で改行しても一行あいてし...
-
新しいタブで開かせない方法は...
-
HP、リンク先を最大化で開く方...
-
プルダウンメニューの開く方向...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AfterEffectsでイージーイーズ...
-
Mayaレンダリングの中断
-
aviutlで最後まで動画が読み込...
-
キーフレーム
-
photoshopのアニメーションで拡...
-
MMDのAVI出力にとんでもなく時...
-
avidemuxでavi動画を一部切り取...
-
ワードでホームページ作成・フ...
-
音楽CDをパソコンに入れたとき...
-
Dreamweaver これはどうやった...
-
フレームの間引き
-
ビルダーでスクロールバーが消...
-
VFRのmp4をCFRに変換したい
-
見るパソコンによって文字化けする
-
3dsmaxのBipedの使い方について
-
フレームの印刷をするためには?
-
クリックすると外側はそのまま...
-
画像の枠にオシャレなフレーム...
-
ホームページビルダー11のフレ...
-
Flash設置とターゲット指定につ...
おすすめ情報