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

アクションスクリプトのサンプルソースは以下です。
(関係がありそうな箇所だけ)
サンプルでは、横に並べているメニューなのですが
私は縦にやってみたくて・・・
しかし、このソースのままだとどうしても
プレビューすると「ななめ」になってしまうのです。
どこをどう改造すればいいのでしょうか?

}
onClipEvent (enterFrame) {
//三平方の定理を利用してマウスからの距離を求める
mx = _parent._xmouse;
my = _parent._ymouse;
ox = this._x;
oy = this._y;

sx = (ox - mx)*(ox - mx);
sy = (oy - my)*(oy - my);
s = Math.sqrt(sx + sy);

//距離が50以下の時に拡大
if(s<=100){
this._xscale = scl + (100-s)*1.5;
this._yscale = scl + (100-s)*1.5;
}else{
this._xscale = scl;
this._yscale = scl;
}

初歩的な事で申し訳ありませんが
よろしくお願いします。

A 回答 (2件)

そうすると、Y座標に対して、X座標の値を変更する的なモノなのではないかと思うのですが、挙げてもらったスクリプトだと、



onClipEvent (enterFrame) {
//三平方の定理を利用してマウスからの距離を求める
mx = _parent._xmouse;/*変数の定義*/
my = _parent._ymouse;/*変数の定義*/
ox = this._x;/*変数の定義*/
oy = this._y;/*変数の定義*/

sx = (ox - mx)*(ox - mx);/*変数の定義*/
sy = (oy - my)*(oy - my);/*変数の定義*/
s = Math.sqrt(sx + sy);/*変数の定義*/

//距離が50以下の時に拡大
if(s<=100){
this._xscale = scl + (100-s)*1.5;/*大きさの変更*/
this._yscale = scl + (100-s)*1.5;/*大きさの変更*/
}else{
this._xscale = scl;/*大きさの変更*/
this._yscale = scl;/*大きさの変更*/
}

という感じで、位置に関するものは記述されていない気がするのですが。
onClipEvent (enterFrame) の前に“}”があるということは、コピペしてきたのなら、それよりも前があったんだと思うのですが、そちらに“_x”“_y”のような記述はないのでしょうか。
想像するに“onClipEvent(load)”のくくりがあると思うのですが。
    • good
    • 0
この回答へのお礼

何度もありがとうございます。
おさっしのとおり、よく見ると“onClipEvent(load)”
ほか一部が抜けていました(--;)
で、そこのxを全てyに書き換えると、縦になりました!
前の質問にもお答えいただいていたようで、ありがとうございます。
これからもお世話になるかもしれませんが
よろしくお願いします。

お礼日時:2004/07/18 17:48

何が斜めになるのかわかりませんが、ここに書かれているところはあまり関係ないような気がします。


「ななめになる」という表現を詳しく説明してくださると、また違った回答もできるかと思います。

この回答への補足

説明不足で失礼しました。
編集画面では、丸いボタンを3つ縦に並べているのですが、
それがプレビューするとなぜか右下がりの斜めに配列されてしまうのです。
目的の「ポイントで拡大」はできているのですが。
ボタンひとつひとつにこのスクリプトを記述し、
そして3つのボタンをまとめてシンボルに変換し、さらにスクリプトを書くというやり方なのですが
まとめてシンボルにしたほうのスクリプトは
書き換えたり削除したりしても
やはり斜めに配列されてしまいましたので
ここに書いたサンプルスクリプトのほうに問題があるのだと思いますが・・・

補足日時:2004/07/18 13:49
    • good
    • 0

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