No.2ベストアンサー
- 回答日時:
「最後だけシーンを切り替える」
という部分が,Scriptのメイン部分になるため,非常に答えにくいです。
どういう風にされたいのかがわからないので,例として月によってgotoするフレームを変えるスクリプトを書きます。
基本はJavaScriptと全く変わりません。
使っている関数や構文も全く同じです。
ただ,Flashを動作させる部分がかわるだけです。
「Javascriptの条件文」
http://www.rsch.tuis.ac.jp/~mizutani/online/java …
まずは,月の取得ですが,これはこの2行だけで良いです。
------------------------------
// 新しい Date オブジェクトを作成する
myDate = new Date();
//変数 tuki にDate オブジェクトの月+1 を取得
tuki = myDate.getMonth()+1;
-----------------------------
getMonth()+1 にしていますが,
1月だと0,2月だと1… という具合になるので紛らわしくないようにこの段階で+1をしただけです。
単なる私の趣味です。
JavaScript と同じく変数だとわかりやすいように前に var を付けて
-----------------------------
var myDate = new Date();
var tuki = myDate.getMonth()+1;
-----------------------------
のようにしてもかまいません。
次にこの得られた tuki の値によって,if文で分岐させます。
1月だったら31フレームに,2月だったら41フレームに…
というのをスクリプトにすると以下に様になります。
---------------------------
myDate = new Date();
tuki = myDate.getMonth()+1;
if (tuki == 1) {
gotoAndPlay (31);
} else if (tuki == 2) {
gotoAndPlay (41);
} else if (tuki == 3) {
gotoAndPlay (51);
} else if (tuki == 4) {
gotoAndPlay (61);
} else if (tuki == 5) {
gotoAndPlay (71);
} else if (tuki == 6) {
gotoAndPlay (81);
} else if (tuki == 7) {
gotoAndPlay (91);
} else if (tuki == 8) {
gotoAndPlay (101);
} else if (tuki == 9) {
gotoAndPlay (111);
} else if (tuki == 10) {
gotoAndPlay (121);
} else if (tuki == 11) {
gotoAndPlay (131);
} else {
gotoAndPlay (141);
}
----------------------------
上に書いたURLをもう一度見直してみるとわかりますが,
「Javascriptの条件文」
http://www.rsch.tuis.ac.jp/~mizutani/online/java …
同じですね。
gotoAndPlay (○○);
とか言うFlash特有な部分が挟まっているだけです。
これを,タイムラインの月ごとに進みたいフレームに書けば,
そのフレームに達したとき目的のフレームに自動的にジャンプします。
しかし,上のように規則正しい法則にしたがって,
goto するフレームを変える場合は,if文の分岐も要りません。
上のスクリプトはよく見ると,
tuki=1 のとき 31(フレーム)
tuki=2 のとき 41(フレーム)
tuki=3 のとき 51(フレーム)
… …
tuki=n のとき n×10+21(フレーム)
となっているのがわかります。
if文だとたいていの分岐に対応できます。
でもif文だとダラダラ長くて,格好が悪いですし,PCの頭も余分に使ってしまいます。
ですから上のような場合,普通は,
-----------------------------
myDate = new Date();
tuki=myDate.getMonth()+1;
gotoAndPlay(tuki*10+21);
-----------------------------
と書きます。
これの方がスッキリしていて良いですね。たった3行になります。
上記参考URLにはないですが,こういう方法は当然JavaScriptでも他の言語でも使います。
最後のシーンはいったいどうしたいのかによって,
gotoAndPlay (○○);
の部分が変わります。
loadMovie を使って他のムービーを読み込むとか,
○○.play(); で,インスタンス名○○のムービークリップをスタートさせるとか,
様々です。
とりあえずは if文を使う形で考えてみて,もし公式化できそうだったら,
if文ではなく,短縮することも考えてみてください。
この月の値はローカルPCの時刻を取得しています。
PCの日付と時刻の調整で月を変えてもらうと,本当にスクリプトはうまく動作するのかが確認出来ます。
===雑談=========================
Flashのスクリプトは ActionScript と呼ばれています。
こう呼ばれるようになったのは,日本ではFlash5(2000年10月13日発売)からです。
それまでは正式にはそう呼ばれていなくて,単にアクションと呼ばれていました。
よく考えると旧世紀の話ですね。
アクションと呼ばれていた頃のスクリプトは,JavaScript とは全く似ていないもので,VBA とか VBScript に似た感じの言語でした。
例えば If は End If で閉じていました。 On も End On で閉じていました。
ところが,それまでとは全く違う,ActionScript という言語を,マクロメディアが JavaScript の標準規格である ECMAScript をベースに独自に作り,Flash5からその言語形式を採用したのです。
http://www.fumiononaka.com/TechNotes/Flash/FN050 …
だから ActionScript は JavaScript の弟か子どものようなものです。
JavaScript をされている方は,スルスルと ActionScript が理解できると思います。
私は逆に ActionScript をすることによって JavaScript が少しわかるようになりました。
歴史的にも JavaScript の方が古く,使用人口でも JavaScript の方が多いので,考え方や応用の仕方も JavaScript から得る物は多いです。
この回答へのお礼
お礼日時:2005/11/08 22:45
詳しい説明ありがとうございます!!!
返事が遅くなり申し訳ございませんでした。
何とかうまくいきました…!!!
本当に本当にありがとうございました。
No.1
- 回答日時:
こんにちは。
作っていないので細かいことはわかりませんが、私がご質問のようなものを作ると想定して・・・。
1、月ごとの最後のシーンを12個別ファイルで作ります。
2、各月で共通している動きのファイルを作ります。
3、2で作ったファイルで一番最後に現在の月を読み込み
その月に合った外部swfファイルを読み込む
大体こんな手順で作ることができると思います。
問題になるのは、現在の月なのですが、これは、何か関数があると思います(無責任^^)
後は、それをifがswich(スペル自信なし)で条件分岐してやれば、
できます。
簡単にですが,頑張って下さい。
この回答へのお礼
お礼日時:2005/11/08 22:49
ありがとうございました。
返事が遅くなり申し訳ございませんでした。
シーンで切り替えがちょっとうまく行かず、レイヤーで12か月分区切って作りました。。。
返答、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- モニター・ディスプレイ 「.cur」のアイコン表示について 4 2023/03/04 10:21
- HTML・CSS 画像が分割されて切り替わる、ループアニメーションが作りたい 7 2023/05/27 17:12
- Windows 10 フォルダ内の全ての画像を矢印キーでスライドできるようにしたい 1 2022/10/21 12:53
- その他(アニメ・マンガ・特撮) 切り替えができない 3 2022/08/04 22:49
- ビデオカメラ 観光スポットで撮影オンリーになって、観光を楽しんでいるのか?撮影ばかりしているのか?疑問ですが・・ 1 2023/01/03 14:26
- ホームページ作成・プログラミング さくらサーバーに置いているホームページを改修したいです 2 2022/11/06 17:13
- Excel(エクセル) Excel 同一セル内 年、日 入れ替え 5 2022/04/09 01:48
- Y!mobile(ワイモバイル) スマートフォンの契約についての相談 7 2023/03/02 08:53
- リフォーム・リノベーション TOTO便器の排水口と便器を繋ぐ部分のベトベトの交換について教えてください。 3 2023/07/19 15:48
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AfterEffectsでイージーイーズ...
-
Mayaレンダリングの中断
-
SAFARIでのx-oleobjectコンテン...
-
aviutlで最後まで動画が読み込...
-
フラッシュで雨を降らせるには??
-
VFRのmp4をCFRに変換したい
-
Illustrator アプリケーション...
-
after effects レイヤーの複製...
-
avidemuxでavi動画を一部切り取...
-
デジタル写真にフレームをつけ...
-
lightwave3D v8.5 にて親子関係...
-
画像の枠にオシャレなフレーム...
-
XMLを作成してもタグしか表示さ...
-
JSONパース時に改行があるとエ...
-
GoogleChromeでレイアウトが左...
-
Hタグを改行禁止にしてspanのよ...
-
指定した文字を始点にスペース...
-
『タグの無効化』は、どちらが...
-
自分のサイトを開いた時にウィ...
-
テキストエリア内の改行禁止
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AfterEffectsでイージーイーズ...
-
Mayaレンダリングの中断
-
aviutlで最後まで動画が読み込...
-
キーフレーム
-
photoshopのアニメーションで拡...
-
画像の枠にオシャレなフレーム...
-
サードパーティと、IEとNN...
-
Flashのactionscriptについて(...
-
Illustrator アプリケーション...
-
avidemuxでavi動画を一部切り取...
-
MMDのAVI出力にとんでもなく時...
-
メモ帳でHP作成、困ってます
-
教えて!キーフレーム
-
Webサイトの適切な幅は?
-
表情ジェネレータ
-
GIFアニメで不要な線がでてしまう
-
気軽に動画上にマーカーをつけたい
-
フラッシュで雨を降らせるには??
-
インターレースとプログレッシブ
-
フレーム内リンク→フレーム外リ...
おすすめ情報