- http://bigchu.com/
- http://twitter.com/bigchu
- http://foursquare.com/user/bigchu
- Google Wave: bigchu.com[at]googlewave.com
2008.01.23
currentLabelで現在のフレームのラベル名の取得をやってみた ActionScript3.0
- currentLabel: 文字列で現在のフレームのラベル名を取得
- currentLabels: タイムライン上のラベル情報を配列で取得する
以下、
俺なりに【使用例】と【注意点】そして【いろいろ検証】をまとめたものです
【使用例】
新しいMovieClipをつくり、タイムラインを設定しました
this.stop(); // 1フレーム目で止める // 文字列で現在のフレームのラベル名を取得 trace(currentLabel); // label_A を出力 // ライムラインのラベル情報を配列で取得する trace(currentLabels[0].name); // label_A を出力 trace(currentLabels[1].name); // label_B を出力 trace(currentLabels[2].name); // label_C を出力 // 該当ラベルのフレームを取得 trace(currentLabels[0].frame); // 1 を出力 trace(currentLabels[1].frame); // 13 を出力 trace(currentLabels[2].frame); // 25 を出力 // ラベル総数 trace(currentLabels.length); // 3 を出力
【注意点】
ラベルのフレーム範囲はこの通りである
- 赤: label_A (01 〜 12)
- 黄: label_B (13 〜 24)
- 青: label_C (25 〜 36)
ということは、フレーム(21)はラベル名「label_B」である
だが、currentLabels[1].frameで取得できるのは「13」だ
そう、ラベルの先頭フレームになる。13フレーム目だけが「label_B」ではないということです
【いろいろ検証】
gotoAndStop(totalFrames); // 最後のフレームにする addEventListener(Event.ENTER_FRAME, funtion (e: Event): void { prevFrame(); // 前のフレームに戻る if (currentLabel == "label_B") { trace("label_Bに到達したフレーム", currentFrame); removeEventListener(Event.ENTER_FRAME, animetionControl); } if (currentFrame <= 1) gotoAndStop(totalFrames); // 一応、繰り返しのため });
- フレーム逆再生にするから意味がある検証なので矢印の方向に流します
- label_BのフレームにきたらENTER_FRAMEイベント削除する
【出力結果】
label_Bに到達したフレーム 24
キーフレームではなく、ラベル名のフレーム範囲に入ったら処理されちゃいました
ん、ちょいまてよ。こうするとどうだ?
空のキーフレームを挿入
【出力結果】
label_Bに到達したフレーム 24
ん?空じゃだめ?
挿入したキーフレームに「dummy」とラベル名をつける
【出力結果】
label_Bに到達したフレーム 13
これだっ!
AS2ではできなかっらラベルへのアクセスがとっても便利
次はこれやってみよ
addFrameScript
前から思っていましたが、
フレームの開始が"1"なのが気に入らないぞクルァ!!
トラックバック - http://d.hatena.ne.jp/bigchu/20080123/1201096788
リンク元
- 13 http://reader.livedoor.com/reader/
- 3 http://r.hatena.ne.jp/cesces/?mode=table&date=20080118&of=0
- 3 http://www.google.co.jp/reader/view/
- 3 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=DVXA,DVXA:2004-42,DVXA:ja&q=nなかやまきんに君
- 3 http://www.google.com/reader/view/
- 2 http://r.hatena.ne.jp/cesces/?mode=table&of=0&date=20080117
- 2 http://www.google.co.jp/search?q=actionscript+2+カスタムイベント&hl=ja&lr=&rlz=1B3GGGL_jaJP227JP227&start=10&sa=N
- 2 http://www.google.co.jp/search?q=html5とは&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=com.google:ja:official&client=firefox-a
- 1 http://209.85.175.104/search?q=cache:tG9h8KgF1bgJ:d.hatena.ne.jp/bigchu/20070601/1180682017+xpcom+廃止&hl=ja&ct=clnk&cd=14&gl=jp&lr=lang_ja&client=firefox
- 1 http://b.hatena.ne.jp/add?mode=confirm&title=: %u8907%u6570%u306E%u5236%u5FA1%u70B9%u3092%u6301%u3064%u30D9%u30B8%u30A7%u66F2%u7DDA - %u9152%u306F%u8840%u6DB2%u3001%u5451%u3093%u3060%u3089%u732E%u8840&url=http://d.hatena.ne.jp/bigchu/20080123/12






