スクリプトでトゥイーン (1)

かえる君がトゥイーン。 :boy:

なんとスクリプトで! :doki:  Tweenクラスですよ!

This movie requires Flash Player 9.0.0


_root に、ムービークリップ(インスタンス名: frog, flag) を配置。

frog 第1フレームに
// クラス宣言 (パッケージパスつき)
import mx.transitions.Tween;
import mx.transitions.easing.*;


// パラメータ
var startPos:Number = this._x;
var targetPos:Number = _root.flag._x;
var easingType:Function = Regular.easeIn;
var duration:Number = 2;

this.onRelease = function():Void {
  // Tweenインスタンスの生成
  var frogTween:Tween = new Tween(this, "_x", easingType, startPos, targetPos, duration, true);
  frogTween.onMotionFinished = function():Void {
    _x = targetPos;
  };
};
と記述。

参考資料「Tweenクラス


Tween クラスのパラメータ

mx.transitions.Tween クラスのコンストラクタに対して指定するパラメータの名前とタイプを次に示します。

Tween(obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean)

obj:Object
Tween インスタンスのターゲットになるムービークリップオブジェクトです。
prop:String
値がトゥイーンされる obj のプロパティのストリング名です。
func:Function
トゥイーンされるオブジェクトのプロパティ値のイージング効果を計算するイージングメソッドです。
begin:Number
prop (トゥイーンされるターゲットオブジェクトのプロパティ) の開始値を示す数値です。
finish:Number
prop (トゥイーンされるターゲットオブジェクトのプロパティ) の終了値を示す数値です。
duration:Number
トゥイーンモーションの継続時間を示す数値です。 省略した場合、デフォルトで継続時間が無限に設定されます。
useSeconds:Boolean
duration パラメータで指定した値の単位に関して、秒(true の場合)またはフレーム(false の場合)のどちらを使用するかを示すブール値です。

イージングクラスとメソッドについて

イージングクラス
Back
トランジション範囲の片側または両側を一度超えてアニメーションを拡大し、範囲の外側から引き戻すような効果を発生させます。
Bounce
トランジション範囲を超えずに、この範囲の片側または両側でバウンス効果を発生させます。バウンドの回数は継続時間に比例します。継続時間が長くなると、バウンド回数が増えます。
Elastic
トランジション範囲の片側または両側で外部に伸縮効果を発生させます。伸縮度は、長さの影響を受けません。
Regular
片側または両側で動きを減速します。この機能を使用して、加速効果、減速効果、または両方を追加できます。
Strong
片側または両側で動きを減速します。この効果は、Regular イージングクラスと似ていますが、より大きい効果があります。
None
効果、減速、または加速を設定せずに、最初から最後まで等速で実行します。このようなトランジションを線状トランジションと呼びます。

メソッド
easeIn
トランジションの最初にイージング効果を発生させます。
easeOut
トランジションの最後にイージング効果を発生させます。
easeInOut
トランジションの最初と最後にイージング効果を発生させます。
easeNone
イージング計算を使用しないことを示します。None イージングクラスでのみ提供されます。


プルダウンメニューで easingType, duration の値を設定できるようにしてある。 :bear:


[追記] (06/04/05 Wed 07:15)
かえる君が移動中に、コンテキスト(右クリック)メニューを表示させると、
Safari や IE では、表示させている間、動きが止まりますが、
指定した秒数後には、かえる君はきちんと目的地に達します。
しかし、そのために、グラフが、グラフがっ…。 😮
( :banana: スクリプトでトゥイーン (2) 参照)

[修正] (06/04/05 Wed 18:16)
スクリプトを微妙に修正。