マウスが重なったらアイコンをジャンプさせる


説  明
マウスが重なったらアイコンをジャンプさせるには、まずジャンプするアイコンをPhotoshopなどで作成しておきます。LiveMotionにファイルを読み込むか、コピー&ペーストします。読み込んだアイコンをムービークリップにします。ステートパレットでover、outステートを作成し、それぞれにスクリプトを適用します。ジャンプしているかどうかを変数flagで保持しておきます。trueであればジャンプ中、falseであればジャンプはしていない、という事にします。ステートがoverならばflagをtrueにし、outならばfalseにします。
これだけではジャンプしませんのでEnterFrameイベントを使ってジャンプ処理を行います。スクリプトウィンドウ上でonEnterFrameイベントを指定し、以下のように入力します。

if (flag)
{
count = count + 0.25;
n = Math.abs(Math.sin(count)) * 20;
this._y = startY - n;
}

どうやってジャンプさせるかですが、変数を用意してカウントさせY座標に加算する方法などがありますが、ここではsin(正弦波)を使って、その値を利用してジャンプ幅を指定します。sinの値は負数になる場合がありますので、Math.abs()を使って必ず正数になるようにします。「count + 0.1」の数を小さくすると、もっとゆっくりジャンプするようになり、数を大きくすると速くジャンプするようになります。
 スクリプトはアイコンのムービークリップ内に記述しているため、複製を作った場合でも個別にジャンプさせることができます。

サンプル画面


■サンプルスクリプトを実行する >>sample.html
■サンプルスクリプトをダウンロードする >>.zip