• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:FLASH 定型のASを登録しといて一度に変更する)

FLASH 定型のASを使ってスプライトを一度に変更する方法

このQ&Aのポイント
  • FLASHソフトのSuzukaで使えるAS(アクションスクリプト)を使って、複数のスプライトを一度に変更・編集する方法について教えてください。
  • スプライトに複数のASをコピペで記述した場合、後からASに修正が必要になると全てのスプライトを修正しなければなりません。それを防ぐために、あらかじめ登録された3行のASを使って一斉に変更できれば便利です。
  • Suzukaで使えるASの使い方や、3行のASを定型として登録する方法について教えてください。アクションスクリプトを使ったことがないので、勉強のために試してみたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.2

#1です。 #1の回答後色々考え直してみたのですが ひょっとして「あらかじめ3行のASを登録しておくようなAS」とは 関数(function文) のことでしょうか? 例えば Suzuka のキャンバス上のフレーム1に3つのスプライトを用意して そのスプライト(スプライトを配置したレイヤー)に 「mc_1」「mc_2」「mc_3」 というインスタンス名を付けたとします。 その状態でアクションスクリプトレイヤーを挿入して【図↓】 そのアクションスクリプトレイヤーのフレーム1に次のスクリプトを書いたとします。 ------------------------------------------- //関数 moveMC の定義(引数:スプライトインスタンス) function moveMC(MC){ //引数で送られて来たスプライトのx座標を10加算 MC._x += 20; } //変数 i を 1~3 で 1 ずつ加算しながらループ for(var i = 1; i<=3; i++){ //mc_(1~3) クリック時の動作定義 this["mc_" + i].onRelease = function(){ //関数 moveMC を実行(引数:自分自身のスプライト) moveMC(this); }; } ------------------------------------------- そうすると どのスプライトをクリックしても右に10pxずつ動きます。 クリックされたスプライトが 関数 moveMC 内のスクリプト MC._x += 20; これを例えば MC._x += 50; のように書き換えれば 全てのスプライトクリック時の動作が 右に50pxずつ動くようになります。 そういう意味でなら 「あらかじめ3行のASを登録しておくようなAS」として function文 を使います。 Suzuka のための参考サイトではありませんが↓ 「ActionScriptのオブジェクト化(function) FLASHRAVE - FLASH 講座 -」 http://flashrave.org/as/function/index.html

16a27
質問者

お礼

レス頂き感謝致します。 おそらく、私の質問内容は BlurFiltan様が最初にご回答頂けた時、 ご理解頂けていた内容と一致していると思います。 あの質問後にも自分なりに調べていたのですが、 やはり私が意図する都合のいいASはありませんでした。 (と言うか私の誤解だったと思います。) ですので 2つ目にご回答頂けたスクリプトは、私が希望するものとは少し違いました。 ただ、記述して頂いたスクリプトは私の記憶とカナリ酷似しています。 恐らくこのタイプのスクリプトを、どこかのサイトで見て勘違いしたのかもしれません。 勉強不足・説明不足でご面倒おかけ致しまして申し訳ありませんでした。 2つ目にご回答頂けたスクリプトも、自分が作っているフラッシュに活用できそうなので 今後利用させて頂きたいと思います。 ご丁寧に回答してくださり、とても感激しております。 レス頂きありがとうございました<(__)>

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

ActionScript は Flash Player に命令する言語ですよ。 つまり パブリッシュ(コンパイル)後に できあがった SWF 内で動作する言語です。 Flash オーサリング(作成)ツール で動作する言語ではありません。 つまり Suzuka 上でスプライトに記述したスクリプトを手直しするような言語ではありません。 Adobe Flash の場合、 言語を使うとするならばとしては JSFL という言語を使います。 http://www.google.co.jp/search?sourceid=navclient&hl=ja&q=JSFL 意味としては Flash JavaScript (Flash オーサリングツール上で動作する JAVA風スクリプト言語)です。 Suzuka にはそのような言語は用意されていないと思いますし、 あったとしても 少なくとも ActionScript ではありません。 繰り返しますが ActionScript は Suzuka 上で動作する言語ではなく Flash Player を動作させる言語です。 Suzuka の プロジェクトファイル である拡張子 .csf のファイルは実はテキストファイルです。 Windows の メモ帳(Notepad) や、秀丸、やサクラエディタなどの普通のテキストエディタで開いて編集できますから、 元ファイルは当然バックアップとしてとっておいてテキストエディタで置換とかすれば良いのではないでしょうか? うまく行くかもしれませんよ。 (Adobe Flash の場合は、CS5 になってやっと中身が XML(テキスト)データ の FLA ファイルになりましたが、CS4 まではバイナリだったのでこういうことができませんでした。つまり不便でした。)

16a27
質問者

お礼

レス感謝致します。 そうでしたか・・ 随分とまえの事を思い出して書いてしまい、 キチンと理解出来てなかったのが良くなかったですね。 ご回答頂き、ありがとうございました<(__)>

すると、全ての回答が全文表示されます。

関連するQ&A