重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【終了しました】教えて!gooアプリ版

はじめまして。
制作環境 flashCS3 アクションスクリプト2.0

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


//クラスのインポート
import mx.transitions.Tween;
import mx.transitions.easing.*;


grobal_btn.onRelease = function() {

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座標、移動した後の座標

}

A 回答 (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;
}

};
//-------------------------------------------
 
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/08/07 08:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!