久々の更新です。
Flashのライブラリである、tweenerを使ってみました。
http://www.tonpoo.com/tweener/index2.html
こちらのサイトに色々書いてあります。
使用するには、ダウンロードが必要ですが、
URLが、上記の説明ページと同じで、若干解りづらいですね。
さて、ダウンロードしてきたら、普通にインポートすれば
使えます。
import caurina.transitions.Tweener
こんな感じ。
参考にしたサイトは、
基本的な使い方が書いてある
http://www.scratchbrain.net/blog/ver2/entries/000311.html
トランジションのリストが書かれてる
http://hosted.zeh.com.br/tweener/docs/en-us/misc/transitions.html
こんな感じです。
で、折角ダウンロードしてきたので、簡単なサンプルを。
最近、auのandoroidのCMやってますよね。
あれのテキストがユラユラするやつが、ちょっとかっこ良いなぁと思ったので、
まねてみます。
//tweenerをインポート
import caurina.transitions.Tweener
//グローバル変数の定義
var nTxtX = txt_mc.x;//txt_mcの最初のx位置
var nTxtY = txt_mc.y;//txt_mcの最初のy位置
var nMoveX:int;//ランダムの数字を格納する変数(xに足す用)
var nMoveY:int;//ランダムの数字を格納する変数(yに足す用)
var nCheck:int = 1;//スタート、ストップを制御する為の変数
//初期設定
switch_mc.buttonMode = true;//ボタンモードオン
switch_mc.gotoAndStop(2);//switch_mcを2フレームめで止める(stopが表示される)
tween();//tween関数を実行
//関数の定義
//ランダムに文字を動かす関数tweenの定義
function tween(){
//1〜8までのランダムの値を、変数nMoveX、変数nMoveYに格納
nMoveX = Math.floor(Math.random()*8 + 1);
nMoveY = Math.floor(Math.random()*8 + 1);
//ランダムで、変数nMoveX、変数nMoveYをマイナスにする
if(Math.round(Math.random())){
nMoveX = -nMoveX
}
if(Math.round(Math.random())){
nMoveY = -nMoveY
}
//tweenerアニメーション。
//xは、変数nTxtXに、ランダムな数字が格納された変数nMoveXを、
//yは、変数nTxtYに、ランダムな数字が格納された変数nMoveYを、指定。
//0.3秒で、指定した位置に移動する。
//処理が終わったら、関数repeatTweenを実行。
Tweener.addTween(txt_mc, {x:nTxtX + nMoveX,
y:nTxtY + nMoveY,
time:0.3,
onComplete:repeatTween,
transition:"linear"});
}
//関数tweenを繰り返し実行させるrepeatTween関数
function repeatTween(){
//変数nCheckが1だったら、関数tweenを実行
if(nCheck == 1){
tween();
}
}
//スタート、ストップを制御する関数btnPush
function btnPush(e){
//関数nCheckが0だったら、switch_mcを2フレーム目で止めて、
//変数nCheckに1を代入。
if(nCheck == 0){
switch_mc.gotoAndStop(2);
nCheck = 1;
//関数nCheckが1だったら、switch_mcを1フレーム目で止めて、
//変数nCheckに0を代入。
}else if(nCheck == 1){
switch_mc.gotoAndStop(1);
nCheck = 0;
}
//関数repeatTweenを実行。
repeatTween()
}
//イベントリスナーの定義
switch_mc.addEventListener(MouseEvent.CLICK, btnPush);
上記の様なコードになりました。
上記の赤文字の所が、tweenerを使った所です。この記事の主役のくせに、あんまりコードの量が多くない…
見比べてみると、若干違う気が…
まぁ気にしない気にしない。