• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Tweenを使って元の位置に戻したい)

Tweenを使って元の位置に戻したい

このQ&Aのポイント
  • Tweenクラスを使ってアニメーションを楽しんでいます。
  • 座標100、200に円(直径75のボタン)を配置し、クリックすると座標300、200に拡大移動できます。
  • ここまでは動作するのですが、再度クリックして元の位置に戻す方法がわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

クリックする度にフラグとなる変数の値を入れ替えて そのフラグの値によってTweenを変えれば良いと思います。 //------------------------------------------- //クラスのインポート import mx.transitions.Tween; import mx.transitions.easing.*; //「grobal_btn」の初期の大きさと座標を変数に保存 var g_btn_xs:Number = grobal_btn._xscale; var g_btn_x:Number = grobal_btn._x; var g_btn_ys:Number = grobal_btn._yscale; var g_btn_y:Number = grobal_btn._y; //フラグとなる変数を用意 var g_flg:Boolean = false; grobal_btn.onRelease = function() { //フラグがfalseであれば if (!g_flg) { mc_tween = new Tween(grobal_btn, "_xscale", Elastic.easeOut, grobal_btn._xscale, 150, 1, true); mc_tween = new Tween(grobal_btn, "_x", Elastic.easeOut, grobal_btn._x, 300, 4, true);//スタートx座標、移動した後の座標 mc_tween = new Tween(grobal_btn, "_yscale", Elastic.easeOut, grobal_btn._yscale, 150, 1, true); mc_tween = new Tween(grobal_btn, "_y", Elastic.easeOut, grobal_btn._y, 100, 4, true);//スタートy座標、移動した後の座標 //フラグをtrueにする g_flg = true; } else { mc_tween = new Tween(grobal_btn, "_xscale", Elastic.easeOut, grobal_btn._xscale, g_btn_xs, 1, true); mc_tween = new Tween(grobal_btn, "_x", Elastic.easeOut, grobal_btn._x, g_btn_x, 4, true);//スタートx座標、移動した後の座標 mc_tween = new Tween(grobal_btn, "_yscale", Elastic.easeOut, grobal_btn._yscale, g_btn_ys, 1, true); mc_tween = new Tween(grobal_btn, "_y", Elastic.easeOut, grobal_btn._y, g_btn_y, 4, true);//スタートy座標、移動した後の座標 //フラグをfalseに戻す g_flg = false; } }; //-------------------------------------------  

x_izumin
質問者

お礼

早速の回答をありがとうございます。 初心者の私にはフラグの扱い方や変数に入れておく等、聞いてはいるものの実際に使おうと するとどのように構文を記述してしてよいのかわからずじまいでした。例を参考していろい ろと試していきます。

関連するQ&A