• 締切済み

if文について(初心者です)

初めて書き込みさせて頂きます。 flashに興味を持ち、現在、独学にて学習をしております。 このような初歩の質問で、大変恐縮ですが、 ご教授頂ければ嬉しく思います。 ------------------------------------------------------------- シーン1のステージ上に、 ムービークリップ「photo_mc」(400x1000)を配置し、 マスク(400x350)をかけ、見える範囲を指定しました。 ボタンを2つ作成し、上下にMCが動くようにしました。 MCを上に移動させる為のボタンに、以下のスクリプトを書きました。 on (press) { photo_mc._y -= 70; //ボタンを押す度、photo_mcのy値を70引く trace(text_mc._y);  //yの値を出力、表示 if(photo_mc._y >= -850){ //もしphoto_mcのy値が-850か大きければ photo_text_mc._y -= 0; //photo_mcのy値を変化させない } } プレビューにて確認しますと、移動はしてくれるのですが、 ボタンを押していくと止まらずに、 そのまま上へどんどん移動してしまいます。 y軸の値の指定が、上手くできていないのでしょうか、、。 また、ひとつ考えたものとして、 y軸の値が指定した値になったら、ボタンそのものの機能を停止させる 、というスクリプトはあるのでしょうか、、。 "delete ~"など、使えないものかな、、と考えておりました。 本当に、情けない質問ではありますが、宜しくお願い致します。 長々と、失礼致しました。

みんなの回答

回答No.1

photo_text_mc._y -= 0; の行を photo_mc._y = -850; としてみてはどうでしょうか?上のプログラムでは70引いた後、photo_mcのy値が-850より大きければ、0を引くというようになっているように思います。それと、 if(photo_mc._y >= -850) は if(photo_mc._y <= -850) //photo_mcのy値が-850より小さければ の間違い?

maki_11
質問者

補足

futoshi123様 ご回答、本当にありがとうございます! 実は、質問をアップ後確認をした際に、 スクリプトにおかしい部分がありました。 インスタンス名「photo_text_mc」→「photo_mc」でした。 こちらの質問にそのままコピーアンドペーストすれば良かったものを、 手で打ち込んだ際に「_text」を入れてしまったようです、、。 確認不足ばかりで、本当に情けないばかりです。 on (press) { photo_mc._y -= 70; trace(photo_mc._y);   if(photo_mc._y >= -850){  photo_mc._y -= 0;  } } ↑こちらが実際打ち込んだものです。 そして、肝心の動きなのですが、、ご教授頂いたメッセージを 確認しつつ作業してみました。 止まってくれました! やはり、おっしゃる通り、 演算子の向き、また「photo_mc._y -=0;」の値を「=-850;」 に変える事により、思い通りになってくれました。 しつこいと感じられてしまうかもしれませんが、 futoshi123様、本当にありがとうございました!

関連するQ&A