トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     ループ処理で配列に入れたMCのアルファを上手に増やせない
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
wingard
Åê¹ÆNo.27410
投稿日時: 2006-7-28 11:13
新米
居住地: 大阪
投稿: 21
使用環境:
ループ処理で配列に入れたMCのアルファを上手に増やせない
お世話になっております。
もっと端的に説明できればよかったのですが、
スキルが足りずに上手くできなさそうでしたので、
コードを全部掲載させていただきます……orz

メニューに使うムービークリップの名前を配列に入れて、
その配列の順番にアルファを時間差で少しずつ増やしていこうと思いました。
(メニューに使うので、後から数が増えても大丈夫なようにしたいので)
そこで、次のようなスクリプトを書きましたが、
MCが全く反応しません。

期待としてはj+kの値が0?6のときだけ、
menuArrowArrayの0?6のMCだけアルファが10ずつ増えていって、
最後のMCが100になった時点でループが終わるはずだったのですが、
trace結果を見てみると、なぜか値が全て加算されていっています。
あまりの意味のわからなさに、パニック寸前です。
どうか、ご助言よろしくお願いいたします。

script

stop();

onEnterFrame = topArrowMove;

function topArrowMove():Void
{
	var menuArrowArray:Array = new Array();
	var menuNumber:Number = 7;
	var i:Number;
	var j:Number = menuNumber - (menuNumber * 2) + 1;
	var k:Number;

	for(i=0;i<menuNumber;i++)
	{
		menuArrowArray[i] = _root["menuArrow" + i];
		_root[menuArrowArray[i]]._alpha = -100;
	}

	for(j;j<menuNumber;j++)
	{
		for(k=0;k<menuNumber;k++)
		{
			_root[menuArrowArray[j+k]]._alpha += 10;
			trace("alpha " + (j+k) + (" = ") + _root[menuArrowArray[j+k]]._alpha);
		}
	}
	_root.gotoAndStop(20);
}


trace結果はこんな感じです。

alpha 0 = -89.84375
・
・
alpha 0 = -79.6875
alpha 1 = -69.53125
・
・
alpha 0 = -59.375
alpha 1 = -49.21875
alpha 2 = -39.0625
・
・


----------------
WindowsXP.Pro  Flash8.Pro

フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » ループ処理で配列に入れたMCのアルファを上手に増やせない wingard 2006-7-28 11:13
     Re: ループ処理で配列に入れたMCのアルファを上手に増やせない mayor 2006-7-28 11:58
       Re: ループ処理で配列に入れたMCのアルファを上手に増やせない wingard 2006-7-28 13:31
         Re: ループ処理で配列に入れたMCのアルファを上手に増やせない wingard 2006-7-28 14:02
           Re: ループ処理で配列に入れたMCのアルファを上手に増やせない wingard 2006-7-28 14:29
             Re: ループ処理で配列に入れたMCのアルファを上手に増やせない mayor 2006-7-28 14:39

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops