2006.09.08減速アニメの終了判定
FLASHのチップスを一つ。
減速をスクリプトでアニメーションしようとすると、
だいたいこんな感じになります。
this.onEnterFrame = function(){
this._x += (230-this._x)/10;
}
目標値までの間を現在より1/10詰めなさい。
ってやつですね。
ここまではリファレンス本などに良く載っているかと思うのですが、
this.onEnterFrame = function(){
this._x += (230-this._x)/10;
if(Math.round(this._x) == 230){
trace('終わったよ')
delete this.onEnterFrame;
_parent.owari();
}
}
こんな感じにすることで、
減速の終了判定が出来ます。
1/10つめる
を繰り返しても延々と数字が細かくなるだけで、
目標値にはたどり着きません。
なので、Math.roundメソッドを使って、
「四捨五入して目標値なら達成したものとする」
というものです。
右から来ても、左から来ても判定出来るので便利です。
終了判定なら他にもいろんな方法がありますが、
スクリプトユーザビリティーとでもいうのでしょうか、
同じ処理でも延々と繰り返し続けると、ブラウザーには負荷がかかります。
そうゆうのは避けたいものですね。
本日の広告
不動産ファイルに限らず、お客様にとって大切な契約には
ac-file.comのファイルをご利用下さい。
http://www.ac-file.com/

