• 締切済み

FLASHで2つの色をユーザーに選んでもらってそれがグラデーションになるものを作りたいのですが

今FLASHで作成しているサイトで、たとえば青の四角と赤の四角とかのように何色かをあらかじめページ内に用意しておいて、そのうち2種類の色を選んで「決定」ボタンをクリックすると、背面にあらかじめFLASH上で塗られているグラデーションの色を、自分の選んだ2色のグラデーションに変更させるような手法はありますでしょうか? 単色での方法はわかるのですが、上記のような手法はどうすればよいのかわからないので、知恵をおかしいただけると幸いです。 OS:Win2000 apli:Flash MX

みんなの回答

  • antai
  • ベストアンサー率38% (88/227)
回答No.1

こんなのはどうでしょう。 かなりごり押しです…。 グラデーションの中の色は替え方わかりませんので、ちょっと考えてみました。 手元にフラッシュが5しかないのですが、MXならと想像して考えたので、うまくいくかは…。 まず始めに白から透明になるグラデの物体を作ります。今回の例にあげられている感じだと、ムービーのサイズと同じ大きさの四角でいいと思います。 とりあえずその四角を「シンボルに変換」でムービークリップにしておきましょう。 そのシンボルをステージに2つ配置します。片方にはA、片方にはBと名前をつけましょう。 それを、片方は180度回転させて、整列でピッタリふたつを重ね合わせます。 次にボタンを一つてきとうに作ります。 それをステージに必要数だけ配置します。その一つ一つに次のようなアクションスクリプトを書きます。 on (release) { myColor = new Color(ムービークリップ名); myColor.setRGB(0xRRGGBB); } ムービークリップ名のところには今回ならAかB 0xRRGGBBのところは希望の色を0xはそのままで、以降の6桁で色を決めます。WEBで色を指定するときによく見るあの数字です。わかりますよね、なんとなく…(無知ですいません、なんて呼ぶのかわかりません。ちなみに、このスクリプトはフラッシュのアクションスクリプト辞書にあったものです。使い方はそちらを参考にしてみるといいかもしれません。) これでできたも同然です!っていうか、なんとなくそれっぽくできてませんか? あとは、メインのムービークリップをPLAYするボタンをつくっておけば、設定した色のまま進んでいくと思いますが。 どちらのオブジェクトが上に来るかで若干色味が変わってきたりしますが、ご愛嬌ということで。 とりあえずやってみてください。わからないところがあったら補足させていただきます。 フラッシュ5では、塗りの色などに透明度が設定できない(ただ知らないだけ?)ので、まったく同じ方法では試してませんが、状況的には同じようなものを作って試してみたところ、何とか動いてました。 もっと普通にできたりするのでしょうか…。