Scratchでアクションゲーム制作をしてみる その2「ダッシュ」

Scratchでアクションゲーム制作をしてみる その2「ダッシュ」

前回に引き続き、アクションゲームを題材に遊びながら学んでいきます。

今回は、前回に引き続き「移動」・・・のうち、アクションゲームではとっても大切な「ダッシュ」について。

■サクッとブロック公開

はい、前回同様さくっと作ります。

出来ました。(早

 

「ダッシュと言えばBボタン」ということで、

「Bボタン(bキー)押してる間は2倍動くよ」

というダッシュ機能の完成です。

ドタバタ動くよ!

■ダッシュのポイント

複雑そうに見えますが、移動のブロックに「もし」ブロックが一組ずつ加わっただけなんですねー。

「普段は10歩ずつ動く」「けど、bキーが入力されている時だけ20歩動く」ようになっているのがポイントです。

 

おわり!!

 

■慣性の法則を加えてみる

・・・。

・・・・・。

これだけだとちょっと面白くないので、ちゃんとゲームのダッシュっぽくしていきます。

世の中の(大体の)アクションゲームってダッシュすると、

「慣性の法則」みたいなのが働いて、

ボタンを離してもちょびっとだけ動き続けたりします。

要するに「車は急に止まれない」みたいな動きをします。

これを再現したいわけです。

 

これを再現するには「変数」を使います。

 

変数の解説は細かくはここではしないんですが、自由に数値を入れておける箱のようなもの。

「変数」はScratchの画面上では「データ」の中にあるので、探してみましょう。

で、これをこんな感じに組み合わせていきます。適当にね、適当に

適当に・・・長ッ

ポイントを列記していきますねー。

「加速度」という概念を加えるというのがポイントになります。

  • 「bキーを押しながら右キーを押せば押すほど【加速度は増える】」
  • 「bキーを押しながら左キーを押せば押すほど【加速度は減る】」

今回の加速度の定義はこれぐらい。

 

そして、もう一つ重要なのは「加速度の使い方」。

  • 普段の移動量(10ずつ)に、「加速度」を加算する

すると、「bキーと右キー押し続けてると段々移動量が増えていく(10+加速度)」という現象が起きます。

そしてその状態からすぐに左キーを押しても、「加速度は急にマイナスにはならないので、慣性の法則が働く・・・ように見える(-10+加速度)」

 

これらの要素をアルゴリズム(プログラムの動く仕組み・流れ)に加えていきます。

  1. スタート時に加速度は「0」にしておくこと。
  2. Bボタンを押したとき移動する「歩幅」は「10+加速度」「-10+加速度」にしておくこと。
  3. Bボタンを押しながらアローキー(→とか←とか)を押すと、加速度が「2.5」(好きな値でOK)ずつ増減すること。マイナスにもなる。
  4. 処理の終了後に、加速度は常に「0にちょっとずつ戻っていく」のもポイント。
  5. リミッターつけてないので、ダッシュし続けてると猫の加速度が音速を超え光速を超え猫ではない何かになるかもしれない

いまいち合っているかわからないですが、こんな感じで作ってみました。

1.5ずつ加速していくので、最初10移動、次に12.5移動、次に14移動とか、

初速だけ少し早く、後は1.5ずつ歩幅が広がっていって、そんな感じでどんどん増えていきます。

 

 

やったね。

 

「加速度」とかよくわからなかったら、

「自転車って、こぎはじめ、おそくない?だんだん早くならない?」

っていうのを思い浮かべてください。

あと変数は頑張って。使ってればそのうち「こーゆー感じかー」と覚えます。きっと。

 

というわけで今日はここまで。

ゲームはこちら。FLASH入ってると動かせます。改造もしていいです。

改造したい方、中身見たい方はこちらをクリック