No.2ベストアンサー
- 回答日時:
#1です。
良くはわかりませんが,
インスタンス名 link のムービークリップのタイムライン制御ができないのですね。
ムービークリップやボタンが入れ子になっていて,
親か子のスクリプトが残っているのかもしれません。
また,
Flash MX 以上ではさらに,
on (release) {} ではなく,
ムービークリップ.onRelease = function() {} や
ボタン.onRelease = function() {} なども使えますから,
他に同じアクションがかぶって定義されている可能性もあります。
その, link や ボタンが見える(存在する)フレームを Flash で閲覧した状態で,
「ウィンドウ」→「ムービーエクスプローラ」を選択して,
「ムービーエクスプローラ」を表示させてみてください。
すると階層構造やスクリプトがツリー構造で見えます。
ツリーの 「+」 分岐をクリックして行くと,
各ムービークリップ内のインスタンスに書かれたスクリプトなどがわかりやすく表示されます。
この「ムービーエクスプローラ」で,
同じようなスクリプトが複数箇所書かれていないかどうかを見てみてください。
複数箇所に同じようなスクリプトが重なって書かれていれば,
片方を消しても,もう片方が動作してしまします。
もしそうであれば,
不要なスクリプトを削除してください。
分かりにくい質問に丁寧に答えて頂きありがとうございます。
ムービーエクスプローラを見たら階層やアクションがよく分かりました
で、その勝手に動いていたと思っていたアクションも見つかりました!!
ほんとにありがとうございました。
No.1
- 回答日時:
見えないアクションが動く,動かない...。
いったい何が動いたり動かなかったりするのでしょうか?
例えば,
インスタンス名 a_mc というムービークリップが再生するとかしないとか,
インスタンス名 a_txt というテキストフィールドに文字が表示されるとかされないとか,
インスタンス名 a_btn というボタンがだんだん透明になるとかならないとか,
変数 a に 10 が加算されるとかされないとか,
メインムービー(_root) の再生がストップするとかしないとか,
… など … など …
そういう書き方をしていただかないと,
見えないアクションが動く,動かないと書かれましても何のことやらさっぱりわかりません。
また,具体的な現象を書いていただいても,
「どこかでそのように動作するようにしてあるからそうなる」
としか答えられない気もします。
また,その現象が,
ボタンのスクリプトとどう結び付いているのでしょうか?
> いくつかのアクションがあり全部消すと
これはいったい,
どこに書いたアクションのことを書かれていらっしゃるのでしょうか?
書かれていらっしゃるボタンのスクリプトのことでしょうか?
この辺もさっぱりわかりませんね。
また,
見えないアクションは "動いた方が良い" のか,"動かなかった方が良い" のかその辺もわかりません。
=/=/=/=/=/=/=/=/=/=/=/=/=/=
しかし,
書かれていらっしゃるスクリプトの 意味 や 解説 を書いたり,
書かれていらっしゃるスクリプトの 悪い点 を指摘することでしたらできますよ。
まず,致命的ミスですが,一目瞭然,閉じカッコ } が足りません。
つまり, on (release) { ←このカッコが閉じられていません。
「//」の付いたコメント行をつけ足して,閉じカッコ } も入れると次のようになります。
----------------------------
// このボタンをクリックしたとき
on (release) {
// 親階層の link というムービークリップに命令
tellTarget ("../link") {
// フレーム10 に行って止まれ
gotoAndStop(10);
}
}
----------------------------
このスクリプトから,次のことがわかります。
スクリプトを書いたボタンがボタンシンボルのインスタンスである場合,
そのボタンは何かのムービークリップの中に入っていることがわかります。
また,
ボタンの入ったムービークリップと同じ階層に「link」というインスタンス名のムービークリップがあり,
その ムービークリップlink は 10フレーム以上のタイムラインを持つムービークリップであることがわかります。
階層を図示するとこうなります。
_root(またはムービークリップ)
├ ムービークリップ(インスタンス名 link)
└ ムービークリップ(インスタンス名 不明)
└ボタン (スクリプトが書いてある)
ここまでが,致命的なミスとその修正と意味です。
致命的ミスではありませんが,
まだ致命傷になり得るスクリプトが存在しています。
「tellTarget」 これは Flash MX (Flash 5 以降)では使用を禁止されている関数です。
「Flash 4 以前の SWF をパブリッシュする場合」
もしくは,
「携帯Flashである Flash Lite 1.0,1.1 用の SWF をパブリッシュする場合」
以外では使用禁止です。
そもそも,
tellTarget を使うと 「/」 のスラッシュシンタックスを使わざるを得ませんから,
文法的に ActionScript 1.0 以上とはそぐわないものになります。
また,いまどき, 「../link」 の意味がわかる人はほとんどいませんよ。
「../link」 は 「this._parent.link」 もしくは 「_parent.link」 です。
ボタンなどから見た相対パスでターゲットを示すときに使いますね(使っていましたね)。
相対パスではなく絶対パスの場合は次のようになります。
「/link」の場合は,「_root.link」です。
Flash MX (Flash Player 6 以上)で,
正常に動作させるには次のようなスクリプトに変える必要があります。
----------------------------
// このボタンをクリックしたとき
on (release) {
// 親階層の link を フレーム10 に進ませて止める
this._parent.link.gotoAndStop(10);
}
----------------------------
指摘や訂正をしても,
おそらく「見えないアクションが動く,動かない。」 という現象の解決にはならないと思いますが,
一応以上が,
書かれていらっしゃるスクリプトの 意味 や 解説 や 指摘 です。
=/=/=/=/=/=/=/=/=/=/=/=/=/=
以上で一応終わろうかと思ったのですが,
ここまで書いて,ふと思ったことがあるので書いておきます。
tellTarget を使っていらっしゃるということは,
その昔,Flash 3 もしくは Flash 4 で作られた FLA ファイルか,
古いサイトや古いCDの FLA ファイルを Flash MX で開いて使用されているのではないでしょうか?
Flash 3 もしくは Flash 4 のころのアクションはこんな感じ↓で,
----------------------------------
On (Release)
Begin Tell Target ("../link")
Go to and Stop (10)
End Tell Target
End On
----------------------------------
そのファイルを Flash MX で開くと,自動変換されてこうなります↓。
----------------------------------
on (release) {
tellTarget ("../link") {
gotoAndStop(10);
}
}
----------------------------------
上の場合だと普通の変換だと思いますが,
時には,無茶な変換がされて(たいてい無茶な変換になる),
なんとかギリギリ動くのですが,場合によっては動かないこともあります。
Flash 3 もしくは Flash 4 のころの FLA ファイルを Flash MX で開いた場合は,
自動変換だけににまかせるのではなく,さらに手動で変換してください。
また,ここからが重要ですが,
Flash 3 もしくは Flash 4 のころの FLA ファイルを Flash MX で開いた場合は,
パブリッシュ設定が,Flash 3 や Flash 4 などになっています。
パブリッシュ設定が,Flash 3 や Flash 4 などになっていると,
Flash MX で使えるようになったスクリプトや機能が使えませんから,操作上の不具合は多発します。
まずパブリッシュ設定が Flash Player 6 になっているかどうかを確認してみてください。
ご質問の不具合は,
「古いスクリプトの使いすぎ」 か 「パブリッシュの設定ミス」 による可能性が大きいように思います。
回答ありがとうございます。勉強せずに自己流で作っていたので・・・
上手く説明が出来ずすいません、
昔にFlash5で作ったファイルをMXで編集していました(汗)パブリッシュの設定も5になってました。
Flashの階層が全く把握できてないのですが。ボタンに付けたアクションでインスタンス名linkと言うムービーを動かすアクションを入れていたのですが、それを編集しようとしたらアクションが無くなってしまったのです、ですがボタンを押すとそのアクションが動くので困っていました。ってかやはり同じ説明しか出来ないみたいです・・・
とりあえず一から勉強してみます、ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(ゲーム) なんで世の中のRPGは「アクションRPG」だらけになったんですか? 2 2023/02/21 16:13
- 特撮 メタ能力について 1 2022/05/03 13:37
- その他(恋愛相談) アプローチをされていると思っていた男性がまさかの既婚者でした。オープニングで異動した職場先に年上の男 10 2023/08/24 22:52
- エアガン・モデルガン RUGER の PC CARBINE というのは全て、アクション方式は セミオート なのでしょうか? 2 2022/09/15 20:41
- 哲学 ★自分本位は不幸になる? 10 2023/01/30 08:20
- 株式市場・株価 株の空売りについて教えてください。 5 2023/04/23 22:37
- その他(恋愛相談) 結婚してるけど他にいいなと思う人が身近にできて、でも何もアクション起こさずただの仲の良い知人・友人と 1 2022/08/13 20:23
- 洋画 トム・クルーズは今はミッションインポッシブルなどに出演し、アクションをこなします。 昔は「エージェン 2 2023/06/06 01:41
- Access(アクセス) Access2016のExcelインポートの機能のことで教えてください 1 2022/09/11 14:58
- 洋画 オススメの洋画を教えてください ! 感動系、ミステリー、アクション、ファンタジー が好きです ネタバ 3 2023/05/13 19:37
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
arduino プログラムについて
-
ボタンと連動したフェードイン...
-
python ボタンを押すと複数の関...
-
アクションスクリプト2.0 奇数...
-
VBScriptでMsgBoxのYesNoボック...
-
変数に256文字以上のテキストを...
-
ソースファイルを追加すると、...
-
photoshopで書いた四角の枠の中...
-
VBSでMid関数を使ったらエラー...
-
'2465'指定した式で参照してい...
-
Open officeのDrawのシンボル素...
-
SharedObjectの動作がうまくい...
-
【Photoshop】レイヤー効果の境...
-
YOASOBI
-
Flash コンポーネントのUIScrol...
-
VB.NET メッセージボックスの表...
-
テキストボックスの中身をリセ...
-
ブレーカーの電気シンボル
-
ステージ全体にマスクを
-
UWSCのBTN関数について。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
arduino プログラムについて
-
×ボタンを無効化したいのですが...
-
VB 基本的なプログラム √ ...
-
FlashからPHPへの値の受け渡し
-
FLASH ボタンフォーカスインし...
-
移動位置が狂ってしまう
-
ボタンをクリックして画面遷移...
-
ダブルクリックを無効にするには
-
FlashからPHPへの変数の渡し方...
-
ボタンと連動したフェードイン...
-
FLASH MX ロールオーバーボタン
-
FLASHからメールの送付
-
ムービークリップの中のボタン...
-
Flashのロゴ
-
指定したURLを開くアクショ...
-
photoshopで書いた四角の枠の中...
-
VBAで改行の入ったデータの正規...
-
YOASOBI
-
VBScriptでMsgBoxのYesNoボック...
-
プログラミング、アーキテクチ...
おすすめ情報