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

いつもお世話になっております。
初めて質問させていただきます。
Flashは初心者です。

現在、写真のギャラリーを制作しております。
下記のようにサムネイルを下1列に並べ、上に写真を表示する形です。

  ┌─────────┐
  │         │
D  │  C    B  │A
  │         │
  │ ○ ○ ○ ○ ○ │
  └─────────┘
○→ボタン

ボタン1を押すと、写真1がAの位置からBの位置へ移動。
ボタン2を押すと、写真1がBの位置からCの位置ヘ移動。
そして、写真2がAの位置からBの位置へ移動。
ボタン3を押すと、写真1はCの位置からDの位置へ移動し、
ステージ上から見えない状態に。
写真2はBの位置からCの位置ヘ移動。
写真3はAの位置からBの位置へ移動。

このようなものを制作しようとしています。
【ややこしい説明で申し訳ございません】

現在、
photo_mcというムービークリップの1フレームごとに、
写真1,2,3を入れて、ボタンのアクションスプリクトに
on(press){
//ムービークリップを複製し、指定の位置に配置//
obj = _root.attachMovie("photo_mc", "mc01", 1);
obj._x = 390;
obj._y = 0;
//商品画像の決定//
_root.mc01.gotoAndPlay(3);
}
を記入しており、
ボタンをクリックすると、選択したボタンの画像が
指示した場所に表示される、という状態です。

この先の処理にいきづまっております。
ボタンが押されたらrootにおいてあるcountに1を加算

countにある数字をphoto_mcが取得(?)

その数字に応じて動くどの位置に行くか判断し、移動

というように動かそうとしているのですが、
最初のカウントに1を加算というところでつまづいており、
その先も、可能なのかどうかすらわからない状態です。

なにか別に良い方法があれば、ご教授いただければ幸いです。
どうぞよろしくお願い致します。

A 回答 (1件)

まず、写真1をムービークリップに変換して、インスタンス名をつけます。



※ 下記のスクリプトでは[content]としました。

写真1をダブルクリックして、残りの写真をネストします。

ボタンを3つ作り全てムービークリップに変換、同様にインスタンス名を付けます。

※ 下記のスクリプトでは[btn1 , btn2 , btn3]としました。

スクリプト

var ma :Array = [移動させたいX座標 , 移動させたいX座標 , 移動させたいX座標];
var cnt :Number;

btn.onPress = function()
{
 cnt = 0;

 onEnterFrame = mover;
}

btn2.onPress = function()
{
 cnt = 1;

 onEnterFrame = mover;
}

btn3.onPress = function()
{
 cnt = 2;

 onEnterFrame = mover;
}

function mover()
{
 content._x += (ma[cnt] - content._x) / 8;
}
    • good
    • 0
この回答へのお礼

回答、ありがとうございます!
丁寧な説明の上、スプリクトまで書いていただけて、
とても勉強になりました!

頂いたスクリプトで実際に実行してみたのですが、
希望の動きとは少し違うみたいです。
説明不足ですみませんでした。

ボタン2を押すと、ボタン2を押した時、指示した場所に戻ってくる、
というのがryo2501様にアドバイスいただいたスプリクトですが、
私の希望としては、ボタン2を押すと、指示した場所に戻るのではなく、
更に新しいmcが作られて、Aの位置からBの位置へ移動する、という
ものでした。

希望とは違いましたが、初心者の私としては、とても勉強になる
スプリクトでした!本当に感謝しております。

お礼日時:2008/10/23 12:04

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