[1]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B ●a
A ●
上記のようなflaファイルがあります。
AはボタンでBはムービーです。
Aのボタンには以下のようなアクションスクリプトが設定されています。
--------------------
on(rollOut){
this.gotoAndPlay(18);
}
--------------------
Bの18フレームには以下のようなアクションスクリプトが設定されています。
--------------------
this.stop();
--------------------
Aのボタンの1度目のロールオーバーはきちんと意図した通りに動くのですが、
連続で2回やった時に意図した動きになりません。
時間を置いて再びやったり、違うボタンを触ってからやればきちんと動きます。
連続で2回やってもきちんと意図した通りの動きをさせるためにはどのようにすればいいのでしょうか?
No.8ベストアンサー
- 回答日時:
[1]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B ●
A ●
ではなくて
[1]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B●
A●
の用同じ1フレーム目にして下さい
同じフレームにおいたら無事できました!
ありがとうございました!
これから細かいところを直していきたいと思います。
本当にたくさんおつきあいいただきありがとうございました!!
No.7
- 回答日時:
ボタンAのスクリプト
on(rollOut){
//ロールアウト
_root.B.gotoAndPlay(0);
}
↑
_root.B.gotoAndPlay(0); ではなくて
_root.B.gotoAndPlay(1); ですね
怪しい点はBのMCのインスタンス名ですね
Bではなく半角英数の小文字のbにして見てください
そうですか…残念です。
FLASHってバージョンでそんなに互換性がないんですね…
ボタンA
----------
on(rollOut){
//ロールアウト
_root.b.gotoAndPlay(1);
}
----------
ムービーBインスタンス名を「b」
に変更してみましたがダメでした…。
No.6
- 回答日時:
MC:ムービークリップ
>ムービーBのインスタンス名を「B」にする。
これはMC自体に付けます。フレームにはつけません
>_root.B.gotoAndPlay(0);
ここで指定しているフレーム番号はBのMCの中のことを意味しています。
つまりBのMCの中には2つのムービーが存在することになります。
[BのMCの中]
制御 〇
オーバ用 ●-------------●a
アウト用 ●----------●a
〇---いきなりスタートしないようにストップする命令
●a---ムービの終了のためストップ命令
[カレントのフレーム]
制 御 〇
ボタン ●
BのMC●
〇---いきなりスタートしないようにストップする命令
[1]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B ●
A ●
ボタンAのスクリプト
on(rollOut){
//ロールアウト
_root.B.gotoAndPlay(0);
}
ムービーB
[1][2][3][4][5]
● ●a
a:this.stop();
であっているのでしょうか?
正常に動かないのですが…。
No.5
- 回答日時:
よくよく考えるともっと簡単にできそうですね
※Bのムービーのインスタンス名を「b」としてます。
[Aボタン]
on (rollOver) {
//ロールオーバー時に表示するBムービーの開始フレーム
_root.b.gotoAndPlay(2);
}
on (rollOut) {
//ロールアウト時に表示するBムービーの開始フレーム
_root.b.gotoAndPlay(24);
}
[ BのムービーMC ]
0フレーム---stop();
2フレーム---ロールオーバー時 ムービースタート
10フレーム---stop();
ロールオーバー時 ムービーストップ
24フレーム---ロールアウト時 ムービースタート
30フレーム---stop();
ロールアウト時 ムービーストップ
こんな感じでどうでしょうか?
ボタンの方でオーバした時アウトした時にことなる再生フレーム番号で再生しています
とりいそぎということで以下のようにしてみました。
(シーンのフレーム設定はそのままです。)
ムービーBのインスタンス名を「B」にする。
(この場合はフレームにつけるのでしょうか?それともムービー自体から指定してつけるのでしょうか?
今回は両方「B」にしてみました。)
ボタンAに以下のアクションスクリプトを指定
--------------------
on(rollOut){
//ロールアウト
_root.B.gotoAndPlay(0);
}
--------------------
しかし何も起こりません…。
_root.B.gotoAndPlay(0);
で指定した0というのはシーン上でのインスタンスBの0フレーム目ということでしょうか?
それともムービーBの0フレーム目ということなのでしょうか?
すいませんがよろしくお願いします。
No.4
- 回答日時:
アクションスクリプトを使うことで単純化してみてはどうでしょうか?
例えばAのボタンをスイッチのように考えてみてはどうでしょうか?
変数xを利用して
ロールオーバーした時 x=1
ロールアウトした時に x=0
とします。
BのMCの方に下記のように判定しては?
onClipEvent (enterFrame) {
if(x==1){
//ロールオーバーした時に再生するフレーム番号
this.gotoAndPlay(18);
}
if(x==0){
//ロールアウトした時に再生するフレーム番号
this.gotoAndPlay(18);
}
}
BのMCの中の1フレームにしょっぱちに稼動しないように
this.stop();
ちょっと荒い説明になりましたがどうでしょうか?
回答ありがとうございます。
ActionScriptで変数を使うのは初めてですので、わからないことが多いのですがやってみようと思います。
早速ですが…
ボタンAにはどのように記述すればいいのでしょうか?
on(rollOut){
x==0;
}
のようにすればいいのでしょうか?
Bの18フレーム目には
onClipEvent(enterFrame){
if(x==0){
this.gotoAndPlay(18);
}
this.stop();
のようにしてみました。
ですが動きませんでした。。。
記述が逆でしょうか?
修正お願いします。
No.2
- 回答日時:
あら私は勘違いしていました・・・すまそん
AのボタンでBのムービーをコントロールしたいってことですよね?
>連続で2回やった時に意図した動きになりません。
ですからロールオーバーとロールアウトの2つが必要なのではないですか?
この場合はロールアウトしか定義してませんよね?
またまた誤解認識してたらごめんなさい
[1][2][3][4]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B ●a
A ● ● ●
AはボタンでBはムービーです。
A
--------------------
on(rollOut){
this.gotoAndPlay(18);
}
--------------------
B
--------------------
this.stop();
--------------------
Aのボタンの「オーバー」にはムービーが設定されています。
ですが、ボタンではロールアウト時のムービーって指定できませんよね。
ムービーがカットアウトになっちゃうのでなんとかムービーを指定しようとして、
フレームを指定して飛ばすことを思いついたわけです。
最初はロールオーバー時のムービーもシーン上に作成していたのですが、
フレーム数が多くなってしまったので、ボタンに貼り付けました。
Bのムービーにはボタンのロールアウト時のムービーが入っています。
それでロールアウト時のみフレーム指定して飛ばすようにしたんですが、
指定ムービーと同じフレーム(この場合18フレーム目)で再度ロールアウトすると、
19フレーム目に飛んでしまうんです。
これをなんとか回避したいと思っています。
下手な説明ですがおわかりいただけたでしょうか?
よろしくお願いします。
No.1
- 回答日時:
on(rollOut){
this.gotoAndSTOP(18);
}
にすればどうでしょうか
回答ありがとうございます。
[1]~[17][18][19][20][21][22][23][24][25][26][27][28][29][30]
B ●a
A ●
Aのボタン
--------------------
on(rollOut){
this.gotoAndStop(18);
}
--------------------
Bの18フレーム
--------------------
this.stop();
--------------------
としてみましたが、どうも2回目(18フレーム目)がうまく動作しません。
(Bのムービーが出ない)
どうしたらいいでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
- Access(アクセス) アクセス 意図せずサブプロシージャを移動してしまうのを止めたい 1 2022/09/02 09:19
- クレジットカード とあるサブスクリプションを購入しようと思って、 2 2022/05/17 15:06
- その他(パソコン・スマホ・電化製品) PS4のコントローラーについてです 1 2022/05/29 16:05
- docomo(ドコモ) 通話録音が(最初から)自動的に始まるアプリは? 7 2023/01/16 15:53
- モニター・ディスプレイ Displayport接続時にディスプレイ設定の一部の項目がチラついて変更できない 3 2022/07/31 10:06
- 扇風機・冷風機・サーキュレーター スマートプラグで最近の扇風機は操作できない? 5 2022/11/04 13:37
- その他(悩み相談・人生相談) 目覚ましを無意識に止める癖がついてしまい、いつもギリギリまで寝てしまいます。 今は本来起きなければい 2 2022/06/22 21:30
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- アルバイト・パート バイトの研修期間中の給料について。 1 2022/04/25 21:04
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
キーフレーム
-
aviutlで最後まで動画が読み込...
-
AfterEffectsでイージーイーズ...
-
avidemuxでavi動画を一部切り取...
-
Mayaレンダリングの中断
-
XMLを作成してもタグしか表示さ...
-
掲示板からIPアドレスってど...
-
Excel VBA 見本通りに...
-
リンク先のURLを非表示にし...
-
ツールチップの表示時間の調整
-
GoogleChromeでレイアウトが左...
-
stray '\\240' in programのエ...
-
指定URLを新しいウィンドウで開...
-
\\n \\r \\t について
-
ハイパーリンクからメニュー無...
-
表示中のURLなどをバッチファイ...
-
ddの行の折り返しをしたいです...
-
別ウィンドウで複数ページを同...
-
C#のシリアル通信プログラムで...
-
Dreamweaverの改行コードをLFに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AfterEffectsでイージーイーズ...
-
キーフレーム
-
aviutlで最後まで動画が読み込...
-
photoshopのアニメーションで拡...
-
MMDのAVI出力にとんでもなく時...
-
Mayaレンダリングの中断
-
VFRのmp4をCFRに変換したい
-
複数のgifアニメをレイヤーで重...
-
ワードでホームページ作成・フ...
-
getURLで指定したリンク先が表...
-
3dsmaxのBipedの使い方について
-
power director 10でボカシ処理
-
ページごとに違うURLを同一...
-
GIFアニメで不要な線がでてしまう
-
ふぬああの音ずれを直す方法を...
-
教えて!キーフレーム
-
avidemuxでavi動画を一部切り取...
-
気軽に動画上にマーカーをつけたい
-
フレームの間引き
-
リンク先をページ内に組み込む...
おすすめ情報