dポイントプレゼントキャンペーン実施中!

お世話になります。
初めて投稿いたします。
フラッシュ8で、ステージ上にあるシンボルをドラッグして動かすという
スクリプトを勉強したのですが
on(press){
this.startDarg();
}
on(release,releaseOutside){
this.stopDrag();
}
マウスを離したら、いままでドラッグしていた進行方向に
向かって徐々に停止するという状態にしたいです。
どうか、教えていただけませんでしょうか?

A 回答 (1件)

どういう方向性で勉強されている(習われている?)のかわかりませんから回答しにくい面もありますが,


一応,
onイベントハンドラを使用されている という雰囲気を壊さないように考えてみました。

--------------------------------------
onClipEvent (load) {
// ゆっくりになる度合を設定
slowdown = 9/10;
// 動く割合の変数 movement の初期化
movement = 1;
// プレスされたかどうかのフラグの初期化
press_flag = false;
}

on (press) {
this.startDrag();
// プレスされたかどうかのフラグをtrueにする
press_flag = true;
// 座標をpos_x1とpos_y1に記録
pos_x1 = this._x;
pos_y1 = this._y;
}

on (release, releaseOutside) {
this.stopDrag();
// プレスされたかどうかのフラグをfalseにする
press_flag = false;
// 動く割合の変数 movement の初期化
movement = 1;
}

onClipEvent (enterFrame) {
if (press_flag) {
// 前に記録しておいた座標を違う変数に代入
pos_x2 = pos_x1;
pos_y2 = pos_y1;
// あらたに今の座標を記録
pos_x1 = this._x;
pos_y1 = this._y;
} else {
// movement を slowdown の割合で少なくする
movement *= slowdown;
// 記録の差分座標ずつ動かす(減速させながら)
this._x += (pos_x1-pos_x2)*movement;
this._y += (pos_y1-pos_y2)*movement;
}
}
-------------------------------------

onイベントハンドラが使用できるようになった,
Flash MX 以上で使用可能なスクリプトです。
ActionScriptのバージョンは1.0です。
    • good
    • 0
この回答へのお礼

BlurFiltan様
ありがとうございます。
私は、フラッシュ初心者でテキストを見ながら勉強しているのですが
漠然と、疑問が湧いてきました。

本当にありがとうございました。
これから、もっともっと勉強していきたいと思います。
助かりました。

お礼日時:2008/07/06 00:07

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