![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_10.png?e8efa67)
No.1ベストアンサー
- 回答日時:
ご質問の題名と,質問内容の前半とは一致しています。
でも,
>>作りたいアクションは、…
からの後半が全然違うものになっていると思います。なので正確には理解ができません。
前半と後半をもし同じようにとらえていらっしゃる場合は,
Flashの根本的な認識を少し間違えられているような気もするのですが…。
ちょっと不安です。
「ムービークリップを読み込む」とかいう前に,ムービークリップを読み込まずに,ステージ上にムービークリップを置いた場合は操作できるのでしょうか。
~~~例です~~~
真っ白なステージに,"静止テキストで",例えば ★ と描きます。
その ★ を右クリック→「シンボルに変換」でムービークリップにします。
ムービークリップ内のタイムラインを2フレームにします。
2フレーム目をキーフレームにして,その2フレーム目の ★ を ☆ に変えます。
ドキュメントの編集に戻りパブリッシュすると,
★☆★☆★☆★☆… …
とメインムービーのタイムラインに関係なく点滅しますよ。
ここまではOKですか?
これを,メインのムービーからの操作で点滅をストップさせるのは,
まずムービークリップにインスタンス名を付けます。
それで,そのインスタンス名に向けて stop(); を書けば点滅は止まります。
この説明では,インスタンス名を hoshi としたとします。
メインのムービーにボタンシンボルを作って,
そのボタンに
on (release) {
_root.hoshi.stop();
}
これで,星の点滅が止まります。
また始めたいときは,別のボタンシンボルを作って,
on (release) {
_root.hoshi.play();
}
です。
この説明ではボタンにしましたが,例えばメインムービーのタイムラインを90フレームにして,
20フレーム目のタイムラインに
_root.hoshi.stop();
60フレーム目のタイムラインに
_root.hoshi.play();
と書いても良いですね。ボタン操作ではなく,自動的に星ムービークリップが止まったり動き出したりします。
これが,前半までの回答に近い物です。
後半の
>>作りたいアクションは、…
の話とは全く関係ありません。
後半は,このムービークリップの動かし方になります。
メインムービーのステージ上の左端に上で作った星を置いて,
20フレーム目,60フレーム目,最終フレームをキーフレームにして,
20と60フレームの星はステージ中央に配置,
最終フレームの星はステージ上の右端に配置,
そのレイヤーをモーショントゥイーンでつなげば
ステージ上の左から中央に星が移動し,3秒ほど止まり,また動き出すアニメーションができます。
20フレーム目には _root.hoshi.stop(); ,
60フレーム目には _root.hoshi.play();
と書けば,止まっている間だけ星が点滅しないアニメーションになります。
>> 減速しながら停止
>> 加速しながら画面右にスライド
ということなので,
タイムラインの星があるレイヤーのフレーム1を選択して,
プロパティより,モーショントゥイーンの,イージングを 100 くらいにします。
今度はタイムラインの星があるレイヤーのフレーム60を選択して,
プロパティより,モーショントゥイーンの,イージングを -100 くらいにします。
すると「減速しながら停止」「加速しながら画面右にスライド」ができます。
参考「簡単なイージングの使い方」
http://www.mediacreator.jp/tutorials/print_tutor …
-・-・-ちなみに,全然関係ない話ですが-・-・-・-・-・-・-
先日10月12日に発売開始となった,Flash Professional 8では,このイージング機能がもっとすごくなっています(体験版で実感)。
100とか-100とかいう単純なものではなくてペジェ曲線でグネグネ指示できます。
もしアップグレードなどされるとしたら,この辺が使いどころの1つです。
http://www.macromedia.com/jp/software/flash/flas …
-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-・-
~~~~~~~~~~~~
これを,ムービー中のムービークリップではなく,外部SWFを読み込んで表示する場合は,
loadMovie を書けば良いだけで,簡単なことです。
外部SWFを hoshi.swf であったとして, それを hoshi ムービークリップに読み込めば良いので,
_root.hoshi.loadMovie("hoshi.swf");
とタイムラインのフレーム1に書けば良いです。
「ムービークリップ内の動きを止める。」
「ムービークリップをモーショントゥイーンで動かす。」
という全く違った2点についての回答は以上です。
=====================================
「作りたいアクションは」
と書かれていますが,これはアクションスクリプトで全てを動作させたいという意味ですか?
その前に「上のようなことはできるのか。」「動きはそれでOKなのか。」そこがまずわかりませんが。
「上のようなことはできる。」「動きはそれでOK。」という場合,
上の状態のようなものをスクリプトでする場合は以下のようになります。
ステージの幅が550pxだった場合です。
まずステージ上に
hoshi というインスタンス名の小さな目立たないムービークリップを作ります。
そして,
タイムラインのフレーム1には外部 hoshi.swf をロードするスクリプトを書きます。
-------------------------------
_root.hoshi.loadMovie ("hoshi.swf");
-------------------------------
hoshi というインスタンス名の小さな目立たないムービークリップには以下のようなスクリプトを書きます。
hoshi を置く位置は y軸(上下)だけ気をつけてください。
置いた位置で固定されます。
x軸(左右)はどこでも適当でかまいません。
どこに置いてもスクリプトで決まります。
---コピペ可------------------------
onClipEvent (load) {
this._x = 0;
frm = 0;
spd = 0;
}
onClipEvent (enterFrame) {
frm++;
if (frm<=20) {
this._x += (275-this._x)*0.3;
} else if (frm>20 && frm<=60) {
this._x = 275;
this.stop();
} else if (frm>60 && this._x<550) {
spd += 2;
this._x += spd;
this.play();
} else if (frm>=90 || this._x>=550) {
this._x = 550;
}
}
-------------------------------
この回答の前半で説明したモーショントゥイーンで動かす場合とほとんど同じです。
数字は適当に変えてください。
一応上記スクリプトの説明を書いておきます。
インデントを付けるために各行の前には全角空白文字をたくさん入れています。
そのままコピペはできません。
---コピペ不可--------------------
//このムービークリップが表示されたとき
onClipEvent (load) {
//x座標は0にセット
this._x = 0;
//変数 frm と spd を初期化
frm = 0;
spd = 0;
}
//1フレーム進む時間毎に1回以下を実行
onClipEvent (enterFrame) {
//変数 frm を 1 ずつ加算
frm++;
//frmが20以下の時
if (frm<=20) {
//x座標を275に近づける
this._x += (275-this._x)*0.2;
//frmが20より大きく,60以下の時
} else if (frm>20 && frm<=60) {
//x座標を275で固定
this._x = 275;
//ムービークリップ内の動きをストップ
this.stop();
//frmが60より大きく,x座標が550より小さい時
} else if (frm>60 && this._x<550) {
//変数 spd を 2ずつ加算
spd += 2;
//x座標を spd ずつ加算
this._x += spd;
//ムービークリップ内の動きをスタート
this.play();
//frmが90以上,またはx座標が550以上になった時
} else if (frm>=90 || this._x>=550) {
//x座標を550で固定
this._x = 550;
}
}
-------------------------------
のようになります。
スクリプトでするのであっても,タイムラインを使ったモーショントゥイーンなどでするのであっても,別々な物は別々に考えて,別々なものを時間的に同時に実行させるように合体させてください。
===================================
ここまで書いて,今思ったのですが,
ひょっとして,ムービークリップ内のフレームレートだけを変更したいということでしょうか?
それは無理です。
「fps 設定を変更すると、メインタイムラインとムービークリップタイムラインはすべて指定されたフレームレートで再生されます。」
とここ↓にも書いてあります。
「Flash を初めて使用する方へ」
http://www.macromedia.com/jp/devnet/flash/articl …
この回答へのお礼
お礼日時:2005/10/19 05:10
ありがとうございました。できました。
質問の仕方を今後は熟考してから質問いたします。
助かりました、こんごともよろしくおねがいいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 Google Earth Pro 高速道路上空を一定の速度で飛ぶツアー動画の作り方は?? 1 2022/06/01 15:10
- 運転免許・教習所 対面する車用信号機の両隣の歩行者用信号を車用信号の変化予測に使うことは出来ますか? 1 2023/03/12 11:50
- 物理学 走行中の電車内の光の見え方について 3 2022/05/19 06:34
- HTML・CSS トリミングで表示した画像をクリックで元どおりにしたい 3 2022/12/16 18:49
- 物理学 水槽が動き出してからt秒後の液面の傾き角度を教えてください 2 2023/01/27 08:11
- 物理学 物理(車関係)について教えて下さい。 2 2022/08/12 16:43
- 物理学 時間を語るなら、(複数の時間の正体)を知る必要が有る。 1 2023/02/16 22:14
- 物理学 物体間の摩擦力についてですが、 写真の①(上図)のように物体BをF[N]で引っ張ったとき 写真のよう 9 2023/06/08 16:22
- PowerPoint(パワーポイント) you tubeにパワポで作った動画を投稿する方法 1 2023/04/09 22:56
- 数学 自動車の平均速度について。 3 2023/05/23 18:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
arduino プログラムについて
-
スマホでサイトの画像を長押し→...
-
この曲はなんでしょう?
-
フラッシュゲームアーカイブ2
-
Flashは2020年にサポートが終了...
-
potplayerについて質問です
-
ボカロ動画はFlash?HTML5?
-
flash (.swf) を編集したい
-
FLASHでゲームを作っていた人は...
-
laptop go2からの買い替え、lap...
-
スクリップト
-
私のコンピューター上のファイ...
-
chrome flash
-
FLASHの再生はできないのでしょ...
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
Form内のselectを連動させるに...
-
Flashをブロックしないで
-
ダウンロードしたデジブックはa...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ニュースティッカーの作り方
-
Flashでの連打ゲームの作成方法...
-
ロールオーバーしたボタンは押...
-
Flashで一部レイヤーだけループ...
-
Flash lite 1.1で、指定範囲内...
-
画面上にランダムでムービーク...
-
円を描くように動くアニメーシ...
-
パブリッシュで左端が切れます
-
ページ移動する間にMCのアクシ...
-
ラジオボタンの作り方
-
長方形がランダムに消えるやつ
-
actionscript2.0でMCの切り替え...
-
flashでスライド式メニューを作...
-
ムービークリップを一定時間ご...
-
時計がついたスライドショーが...
-
プルダウンメニューを作ろうと...
-
【ActionScript】クラス化のメ...
-
ロールオーバーで他の画像を表...
-
Flashで四角い図形で切り替わる...
-
flashのActionscriptについて
おすすめ情報