• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Flashスクリプト)

Flashスクリプトのマウスで画面をスクロールする方法と値の変更方法

このQ&Aのポイント
  • Flashスクリプトを使用してマウスで画面をスクロールする方法と、画面サイズとスクロールスピードの変更方法について詳しく教えてください。
  • 質問者はFlashスクリプトをダウンロードして使用したいと思っていますが、値をどのように変更すれば良いか分からないと述べています。
  • 質問者は特定の値が画面上のどの要素を動かしているかも知りたいとのことです。

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

  • ベストアンサー
  • DPE
  • ベストアンサー率85% (666/776)
回答No.1

他人の書いたプログラムは、どうしても分かりにくいものです。解析する時は、自分なりのコメントを付けながら考えていくといいですよ。 また、プログラムの書き方・レイアウトには書く人それぞれに好みや主義があり、どれが正式だとか間違いだとかは一概には言えません。 ただ、解析する時は、自分の好みや主義に合わない書き方と分かりにくいこともあるので、その時は自分のスタイルに直しながら見ていくのも1つの手です。 ご質問文のスクリプトですが。 大きく分けて3種類の処理がありますが、1番目と3番目の、alp いう変数を使ったスクリプトは、アルファ(透明度)を操作している部分です。 この部分は、ムービークリップ photo のアルファを 40 ~ 100 までの間で変化させる、いわゆるフェードイン・フェードアウトの処理で、スクロール(ムービークリップの位置の操作)とは直接的には関係ないと思われます。 今回の肝、スクロールの処理を実際に行っていると思われる、2番目のスクリプトを考えてみますと。 (レイアウトは変更させていただきましたが、内容は同じです。ブラウザで表示する都合上、各行頭に全角のスペースが入っていますので、コピーして利用する際はご注意ください。このまま使うとシンタックスエラーになります)  //マウスカーソルの位置を取得  cursorpos_x = _root._xmouse;  cursorpos_y = _root._ymouse;  //カーソルがX = 1 ~ 149 の間にある場合、ムービークリップを右に5移動  if (_root._xmouse >0 && _root._xmouse < 150)  {   pos = getProperty("/photo",_x)+5;   //X = 239までの範囲で、移動処理   if (pos < 240)   {    setProperty("/photo",_x,pos);   }  }  //カーソルがX = 251 ~ 399 にある場合、ムービークリップを左に5移動  if (_root._xmouse > 250 && _root._xmouse <    400)  {   pos = getProperty("/photo",_x)-5;   //X = -239 までの範囲で、移動処理   if(pos > -240)   {    setProperty("/photo",_x,pos);   }  } つまり、何をしているかと言うと、  ・カーソルがステージの左側(座標では 1 ~ 149 )にある時、右方向にスクロール。   ただし、X = 239 の地点より右には移動させない。  ・カーソルがステージの右側(座標では 251 ~ 399 )にある時、左方向にスクロール。   ただし、X = -239 の地点より左には移動させない。 といった処理と思われます。 自分の作品に合わせて改変する時は、  ・マウスカーソルの位置をチェックしている部分   if (_root._xmouse >0 && _root._xmouse < 150)   if (_root._xmouse > 250 && _root._xmouse <    400)  ・ムービークリップの移動範囲を制限している部分   if (pos < 240)   if(pos > -240)  ・スクロールのスピードに関係する部分   pos = getProperty("/photo",_x)+5;   pos = getProperty("/photo",_x)-5; このあたりがポイントになるかと思います。数値をご自分の作品に合うように、変更してみてください。 なお、getProperty や setProperty に使われている、"/photo" のようにスラッシュ( / )を使ってターゲットパスを書く書き方は Flash Player 4 以前の文法で、Flash Player 5 以降の文法ではドット( . )を使った書き方が推奨されています。 ターゲットパスが分からない場合は、「アクション」パネルの上部に並んだアイコンの中の、「ターゲットパスを挿入」(中央のアイコン)を利用してください。 他人の組んだスクリプトを加工して利用する際は、必ず、制作者の了承を得てからにしましょう。 Flash の解説サイトで紹介されているスクリプトや配布サンプルであれば、あまり問題になることはないとは思いますが、加工禁止の素材として配布されていたものに組み込まれていたものなどは、場合によっては著作権の侵害につながる可能性もあります。

zitaa
質問者

お礼

回答ありがとうございます! とてもわかりやすい解説に納得することができました。また注意書きなどもしてもらい本当に感謝します。 スクリプトに関しては配付されていたものです。そのままではわずらわしかったので抽出させてもらいましたが、わかりづらかったですね。コメントをつけるべきでした。 頑張ってつくってみます。ありがとうございました。

関連するQ&A