忍者ブログ
  • 2024.02«
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • » 2024.04
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2024/03/29 03:53 】 |
FLASH講座?丸い物体パート6
「今回の題材maru6」
maru6.swf

|キーボードで左右の方向キー押すと左右に動きます
|今回はさらにを押すと跳ねます(笑)

↓スクリプト↓
var ri:Number = 360;
var end_ri:Number = 0;
var now_r:Number = 0;
var jimen_x:Number = 0;
var now_maru:Number = 0;

//最初に置いてある場所の縦座標を初期値として設定します
var end_yi:Number = maru._y;

//キャラの動きに直接入れる前の一時的変数(今見ると0でいい気がするw)
var re_y:Number = 1;

//上昇&下降のための数値
var yi:Number = 0;

function f_ri() {
ri += (end_ri-ri)/40;
if (end_ri-ri>-0.8 && end_ri-ri<0) {
ri = end_ri;
}
maru._rotation = -ri;
}
function f_jimen_x() {
now_r = (end_ri-ri)/45;
jimen_x += now_r%50;
if (jimen_x<-50 && jimen_x<0) {
jimen_x = 50+now_r%50;
} else if (jimen_x>50 && jimen_x>0) {
jimen_x = now_r%50;
}
jimen._x = jimen_x;
}
function f_gomi() {
now_maru = ri%2000;
g1._x = now_maru+500;
g2._x = now_maru/1.2+1000;
g3._x = now_maru/1.3-200;
}

//前回まではKeyDownでやっていましたが反応が最初反応して
//しばらくしてから連続反応になるので、常に連続反応にするために
//ここのonEnterFrame(フレーム毎動作)に当てはめます

function f_kd() {
if (Key.isDown(Key.RIGHT)) {
  end_ri += -80;
}
else if (Key.isDown(Key.LEFT)) {
  end_ri += 80;
}

//上を押すと上へ移動させるために-50を代入します
//「&&」(追加条件)は地面より20高い位置からなら代入を許します
//これがなければ無制限にどんどん上へ行ってしまいますw

if (Key.isDown(Key.UP) && re_y >= end_yi-20) {
  yi = -50;
}
}

//今回の山場!ぽんぽん跳ねるスクリプトです
//キャラの位置を300、押された状況としてyiを-50初期値として考えます
//足していって300になればもとの位置です
//-50から毎回5ずつ増えます
//仮数値に足します
//こうすることにより1回目は-45が足され2回目は-40が足されます
//re_yの数値は1回目は255、2回目215、180、145、115
//しだいに引かれていた物が足されるようになります(落下にかわる)
//引いていくと60で逆になりますそこから
//yiが5、10、15と増えていきます
//よってre_yは65、75、90となり300以上になるとyiの値を反転させ
//最初の上昇下降数値の6割にしますなので-0.6をかけます

//-30、-18、-10.8、-6.48..になり同じように繰り返されます
//それをキャラに当てはめてる。ということです

function f_yi() {
  yi += 5;
  re_y += yi;
  if (re_y>end_yi) {
   yi = yi*-0.6;
   re_y = end_yi;
  }

maru._y = re_y;
}

this.onEnterFrame = function() {
f_ri();
f_yi();
f_jimen_x();
f_gomi();
f_kd();
};



それではいつものように感想とか
質問や指摘がありましたらコメントをお願いします
PR
【2006/05/19 01:07 】 | FLASH | 有り難いご意見(0) | トラックバック()
<<ささくれ | ホーム | RSS断念>>
有り難いご意見
貴重なご意見の投稿















虎カムバック
トラックバックURL

前ページ | ホーム | 次ページ

忍者ブログ [PR]