以下のActionScriptをスッキリさせたいのですが、良い方法はないでしょうか?
(flash MXを使用しています。)
if (aaa1 == 1) {
mc1.gotoAndStop(2);
}
if (aaa1 == 2) {
mc1.gotoAndStop(3);
}
if (aaa1 == 3) {
mc1.gotoAndStop(4);
}
if (aaa1 == 4) {
mc1.gotoAndStop(5);
}
・
・
・
if (aaa2 == 1) {
mc2.gotoAndStop(2);
}
if (aaa2 == 2) {
mc2.gotoAndStop(3);
}
if (aaa2 == 3) {
mc2.gotoAndStop(4);
}
if (aaa2 == 4) {
mc2.gotoAndStop(5);
}
・
・
・
if (aaa3 == 1) {
mc3.gotoAndStop(2);
}
if (aaa3 == 2) {
mc3.gotoAndStop(3);
}
if (aaa3 == 3) {
mc3.gotoAndStop(4);
}
if (aaa3 == 4) {
mc3.gotoAndStop(5);
}
・
・
・
初心者で、このActionScriptの効率的な書き方がわかりません(^-^;)
functionを使えばいいのでしょうか?
どうぞよろしくお願い致します。
No.2ベストアンサー
- 回答日時:
とりあえず if 文 を無くすと次の3行にできると思います。
-----------------------------
mc1.gotoAndStop(aaa1 + 1);
mc2.gotoAndStop(aaa2 + 1);
mc3.gotoAndStop(aaa3 + 1);
-----------------------------
それで,この3行を,
「for文」 と 「配列アクセス演算子」を使って回すと次のようにできます。
-----------------------------
for (i=1; i<=3; i++) {
this["mc"+i].gotoAndStop(this["aaa"+i]+1);
}
-----------------------------
こんな感じでいかがでしょうか?
ご指摘のようなfor文を使えばi<=3がいくら増えてもいいので便利ですね。
とても助かりました。ご回答いただき、ありがとうございました。
No.1
- 回答日時:
変数の型が分からないためそのあたりはぼかして回答しています。
また、私はflash MXを持っていないため、見当違いな回答かもしれません。
※xxxxxxxxxxは適当な関数名に変更してください。
---ここから---
public function xxxxxxxxxx(aaa:変数の型, mc:変数の型) {
if (aaa == 1) {
mc.gotoAndStop(2);
}
if (aaa == 2) {
mc.gotoAndStop(3);
}
if (aaa == 3) {
mc.gotoAndStop(4);
}
if (aaa == 4) {
mc.gotoAndStop(5);
}
}
xxxxxxxxxx(aaa1, mc1);
・
・
・
xxxxxxxxxx(aaa2, mc2);
・
・
・
xxxxxxxxxx(aaa3, mc3);
・
・
・
---ここまで---
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Excel(エクセル) Formulaプロパティーを使ってセルに数式を組んだのですが簡潔にしたい。 3 2022/08/21 20:51
- 数学 a1,a2, a3をベクトル空間Vのベクトルとする。a1+a2,a2+a3,a3+a1が一次独立のと 2 2022/10/02 15:55
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) Googleスプレッドシートについて質問させて下さい =IF(‘シート1’!C3=“”,””,’シー 1 2022/12/23 18:32
- Excel(エクセル) エクセルVBA 複数行にまたがっている選択を判定するには 2 2023/05/21 21:54
- 英語 提示文のif節の用法について(senario if節) 6 2023/07/31 10:18
- Visual Basic(VBA) Excel VBAでAA(BBB) → BBB.AA に置換したい 2 2022/10/30 13:59
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
外部SWFファイルを再生バーでコ...
-
VB6.0で、フォームから、別のフ...
-
テキストボックスの中身をリセ...
-
VBのチェックボックス
-
VBScriptでMsgBoxのYesNoボック...
-
ランダムに4桁の数字を表示する...
-
×ボタンを無効化したいのですが...
-
五芒星は、悪魔崇拝とどういう...
-
全てのテキストボックスをセル...
-
else if文の順序を変えることに...
-
ADに参加していないPCからADサ...
-
PythonでSetWindowPosを使うに...
-
シンボル化解除の方法
-
ムービークリップがループしません
-
FLASH上での戻るボタン。
-
FlashLite1.1で外部テキスト読...
-
Simulinkのサブシステムの完全...
-
レーダーチャートの描画
-
テキストボックスにセルの値を...
-
ムービークリップの初期座標
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで改行の入ったデータの正規...
-
VBAユーザーホームテキストボッ...
-
テキストファイルから読み込ん...
-
Flashで外部jpgファイルをmcに...
-
FlashでドラッグしたMCをリセッ...
-
AS3 mc0~5をまとめて処理する
-
upc 7915と mc7915ctは互換性有...
-
ラッコって?
-
縦横比率のを変えずに画像のサ...
-
テキスト入力
-
ステージの背景画像のみ拡大縮...
-
eval関数を利用して複数の処理...
-
ランダムに mcを連続attachM...
-
外部SWFファイルを再生バーでコ...
-
四角形の端っこをドラッグした...
-
看護師です。体温表のマクロを...
-
as3 addchildで生成したMCにリ...
-
Flashからリンクする際のconfir...
-
以下のActionScriptをスッキリ...
-
Suzukaで一行ニュースティッカ...
おすすめ情報