ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Flashコミュの【質問】ゼリーのような動きをするMC

  • mixiチェック
  • このエントリーをはてなブックマークに追加
毎回皆さんのログには助けられております。

現在、Flashのショートカットメニュー(トップページのビジュアルを兼ねて)を製作中なのですが、ボタンのロールオーバー効果に、ゼリーのような「プルルンッ」としたアクションを加えたいと思い、書籍をあさって「FLASH-FACTORY/SoftBankPublishing Flash Workers著」の「05-01 弾力性を持つボールオブジェクト」の「弾力性」を表現するアクション部分を抜き出して再現ました。

しかし、このスクリプトではFlashPlayer6までしか動かず、それ以降にコンテを書いていたFlashPlayer8向けのブラー等のアクションが使えず困っています。
どうにかしてFlash8で再現できないかと本も買ってみましたが現在のスクリプト上の何が原因なのかも良くわからず、こちらに書込むに至りました。

以下は現在適用しているスクリプトです。
MC名:logo_mc(内部にボタンシンボルあり)
インスタンス名:logo_mc

●ステージ上のMCに適用するアクション

onClipEvent (load) {
// 最終の伸縮値
DXs = 5;
DYs = 5;
// 現在の伸縮値
Xs = 100;
Ys = 100;
// 伸縮の定数
a = 1;
b = 1.3;
}
onClipEvent (enterFrame) {
if(hover)
{
// 最終の伸縮値
DXs = 130;
DYs = 130;
}
VXs = (Number(VXs)+Number((DXs-Xs)/a))/b;
Xs = Number(Xs)+Number(VXs);
VYs = (Number(VYs)+Number((DYs-Ys)/a))/b;
Ys = Number(Ys)+Number(VYs);
this._xscale = Xs;
this._yscale = Ys;
DXs = 100;
DYs = 100;
}


●logo_mc内のボタンに適用するアクション

on (rollOver) {
hover = true;
}
on (releaseOutside, rollOut) {
hover = false;
}

冗長になってしまいましたが、お分かりの方がいらしたら是非ご教授願いますm(__)m

コメント(2)

trace するなどしたうえで、質問された方が良いように思いますが。

VXs = (Number(VXs)+Number((DXs-Xs)/a))/b;
trace(VXs);
// undefined か NaN になるのでは?

http://f-site.org/articles/2003/09/26164841.html

onClipEvent (load) {} 内で、
VXs = 0;
VYs = 0;
を追加してみてはいかがでしょう?
>ひろゆきさん
返信ありがとうございます。
trace()知りませんでした・・・。申し訳ないッス

trace()してみたところ「NaN」が返ってました。
これじゃ動きませんね。

> onClipEvent (load) {} 内で、
> VXs = 0;
> VYs = 0;
> を追加してみてはいかがでしょう?

追加したら動きました。
ありがとうございます。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Flash 更新情報

Flashのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。