リプタクのもう覚えられません
Google
Web サイト内
topmemo ▶ 「Timer」で形状を変更する方法

ActionScript

「Timer」で形状を変更する方法

タイマーで描画を繰り返し、形状を変更させる方法。

【サンプル】

JavaScriptを有効にし、最新のFlashPlayerをインストールお願いしますGet Adobe Flash player

サンプル(fla)ファイルをダウンロード


【ActionScript3.0 基本形ソースコード】

stop();

var picW:Number = 100;
var picW1:Number;//変更する横幅
var picW2:Number;//一回に変更する長さ
var picH:Number = 100;
var picH1:Number;//変更する高さ
var picH2:Number;//一回に変更する長さ
var timespan:int = 20;//0.010秒間隔
var times:int = 10;//間隔10回


//タイマー設定
var timeT:Timer = new Timer(2000);//2秒間隔、無制限
timeT.addEventListener(TimerEvent.TIMER,sec1);//関数との関連付け			
timeT.start();//タイマー起動

//sec1
function sec1(event:TimerEvent):void {

	//横幅設定
	picW1 = ((Math.round(Math.random()*45))+5)*10;//50〜500 1の位は0
	picW2 = (picW1-picW)/times;

	//横幅変更用タイマー設定
	var timeW:Timer = new Timer(timespan,times);//X秒間隔X回
	timeW.addEventListener(TimerEvent.TIMER,sec2);//関数との関連付け
	timeW.addEventListener(TimerEvent.TIMER_COMPLETE,sec3);//タイマー完了後の関数関連付け
	timeW.start();
}

//sec2 横幅変更timerイベント関数
function sec2(event:TimerEvent):void {
	picW += picW2;
	pic_mc.width = picW;
	pic_mc.x = (stage.stageWidth-picW)/2;//ステージ中央配置
}

//sec3 sec2終了後開始
function sec3(event:TimerEvent):void {
	picW = picW1;//小数点発生時対策

	//高さ設定
	picH1 = ((Math.round(Math.random()*33))+5)*10;//50〜380 1の位は0
	picH2 = (picH1-picH)/times;

	//高さ変更用タイマー設定
	var timeH:Timer = new Timer(timespan,times);//X秒間隔X回
	timeH.addEventListener(TimerEvent.TIMER,sec4);
	timeH.addEventListener(TimerEvent.TIMER_COMPLETE,sec5);
	timeH.start();
}

//sec4 高さ変更timerイベント関数
function sec4(event:TimerEvent):void {
	picH += picH2;
	pic_mc.height = picH;
	pic_mc.y = stage.stageHeight/2-picH/2;//ステージ中央配置
}

//sec5 sec4終了後開始関数
function sec5(event:TimerEvent):void {
	picH = picH1;//小数点発生時対策
}
last update 2009.2.23
参考・出典等
1/1000秒単位で処理する「Timer」クラス

▲page top

topmemoblogtestaboutmail
Copylight(C)2008 Riptac. All Rights Reserved.