"dynTween"は、ムービークリップにスクリプトで動的にトゥイーンを適用することを可能にします。
使用例:
myMC.dynTween ( { duration: 40, _x: [400, "out", 30], _y: [200, "in"] } );
このように引数はオブジェクトの形で渡します。この例ではオブジェクト一つのみを渡していますが、
好きな数だけオブジェクトを並べて渡すことも可能です。
こう書くと myMC は40フレームかけて現在の位置から(400, 200)まで、
x方向に強さ30のイージングアウト、y方向に強さ50のイージングインを適用しながらトゥイーンします。
イージングのタイプには"in", "out", "inOut",
"outIn"の4種類があります。
"in"と"out"はFlashオリジナルのトゥイーンと同様で、それぞれ加速、減速を意味します。
"inOut"は前半に加速、後半に減速、"outIn"は前半に減速、後半に加速します。
イージングの強さは0から100の値を取ることが出来、上の例の_yのように何も指定しない場合は
デフォルトの50になります。またイージングが必要ない場合は次の二通りの書き方があります。
_x:[400]
又は
_x:400
パラメータをより多く使用した例:
myMC.dynTween ({duration : 40,
_x:[300, "outIn", 30], _y:100, _xscale:[200, "out"], _yscale:[-200, "inOut"],
_rotation:[720, "outIn"], _alpha:30, myProp1:[15, "in"], myProp2:-47,
callback : "_root.myFunc", cbArgs : {arg1 : 5, arg2 : "hello"}
},
{duration : 10},
{duration : 20, _x : 30}
);
callbackは、そのトゥイーンが終了したときに実行したいfunctionのフルパスの文字列です。
最後のtweenデータオブジェクトのcallbackに、そのdynTweenを呼んだfunctionを指定することにより、一連の動作を、resetメソッドで止めるまで、無限にループできるようになりました。
cbArgsは、そのコールバックfunctionに渡す引数を指定するための引数です。
複数の引数を渡す場合はオブジェクトの形で渡しますが、その場合コールバックfunctionの定義内でも、
args.arg1といった形で引数が参照されている必要があります。
myProp1 と myProp2 は、myMCが持つ変数で、ビルトイン以外のプロパティでもこのように
トゥイーンすることができます。
トゥイーンさせるプロパティの数に制限はなく、値が数値である限りビルトインであるなしに関わらず
どんなプロパティでも同時にトゥイーンさせることができます。
引数として複数のトゥイーンオブジェクトを渡すとそれらは連続して実行されます。一つ目が終了すると
間を置かずに次のトゥイーンオブジェクト、それが終了するとまた次、といった具合に実行されていきます。
MCをただ単にポーズさせることもできます。
myMC.dynTween ({duration : 10});
こう書くとmyMCは10フレーム分ポーズします。
以下はdynTweenのデモンストレーションswfです。