ケーキ早食いゲームを作ろう 2

 

前回の ケーキ早食いゲームを作ろう のつづきです。

MakeCode Arcade には、あらかじめ用意されたギャラリーの絵があります。
しかし、エディタを使えば、自分で絵を描くことも可能です。
ぜひ一度、試してみてはいかがでしょうか?

 

ケーキを発生させる準備をしよう

このあと、ケーキを発生させます。そのための準備をします。

ゲーム の中の ゲームが更新された時 500ミリ秒毎 をドラッグします。
これは決められた間隔で処理を行うときに使います。

ゲームが更新された時を用意する

 

最初だけ の外に配置します。

ゲームが更新された時を外に配置する

 

ケーキを発生させよう

ケーキのスプライトを用意します。

スプライト の中の黄色で指定したブロックをドラッグします。
下の方にあるのでスクロールして見つけてください。
発射体のところの 発射体○を横から の方です。間違えないように注意しましょう。

スプライトの発射体を横からをドロップ

 

このブロックを ゲームが更新された時 の中に入れます。

次に、発射体の絵を用意します。

発射体の絵を用意する

 

ギャラリーからケーキの絵を選びます。
ケーキの絵は2種類ありますが、小さいほう(解像度の低いほう)を選びましょう。
もし間違えても、あとで変更できるので安心してください。

ギャラリーからケーキの絵を選ぶ

 

現在、右下に向かってケーキが飛んでいます。
真下に飛ばすため、速度 vx0 にします。

ケーキの速度vxを0にする

 

画面いっぱいにケーキを降らせます。

スプライトmySpriteの位置を x0 y0 にする をドラッグします。

mySpriteの位置を x0 y0 にするをドラッグ

 

ゲームが更新された時 の中に配置します。

変数名を mySprite から projectile に変更します。

変数名をprojectileに変える

 

乱数を使って発生位置を変更します。
計算0 から 10 までのランダムな数字 をドラッグします。
下の方にあるのでスクロールして見つけましょう。

乱数を使う

 

位置 x の所に入れます。(次の絵を参照)

乱数の範囲を 10 から 150 までに変更します。
ついでに発生位置 y を -5 に変更します。この理由が分からない時は前のページに戻って再読しましょう。

乱数の範囲を10から150に変更する

 

画面の横幅は 160 です。
乱数の範囲を 10 〜 150 に設定したのは、ケーキを画面内に収めるためです。
プレイヤーが拾えることを前提にしているので、この範囲にしました。

もしこれが隕石のように自然に降ってくるオブジェクトなら、範囲を -5 〜 165 にして、画面外から発生するようにすると、より自然な演出になります。

 

ケーキの速度を変更しよう

今回のゲームの目的は、「時間内にできるだけ多くのケーキを食べること」です。
ここで少し考えてみましょう。
もしケーキが簡単に食べられると、何度プレイしてもスコアがほとんど変わらず、誰がプレイしても似たような結果になってしまいます。

ゲームの面白さのひとつは、「プレイヤーが成長し、上達していくこと」です。
そのため、ゲームは少し難しいほうが楽しめるのです。

本来なら、ゲームが進むにつれて徐々に難易度が上がる仕組みが理想的ですが、それを実装するとプログラムが複雑になります。
そこで今回は、最初から少し難易度を高めに設定することにします。

具体的には、ケーキの落下速度を上げて難しくしましょう。
速度 vy を 80 に変更します。

ケーキの速度vyを80にする

 

ケーキの量も増やします。
発生間隔を 200 ms に変更します。

ケーキの発生間隔を短くする

 

画面を確認しましょう。ケーキが沢山降ってきます。

ケーキが沢山降ってくる

 

当たり判定を入れよう

プレイヤーとケーキの当たり判定を作ります。

スプライト の中の黄色で指定したブロックをドラッグします。
下の方にあるのでスクロールして見つけてください。

スプライトの重なりをチェック

 

当たり判定のブロックは、連結させずに外に配置します。

当たり判定ブロックは外に配置

 

otherSprite のタイプを Projectile(発射体)にします。
これでプレイヤーとケーキの当たり判定になります。

otherSpriteのタイプをProjectileにする

 

プレイヤーとケーキが当たったとき、ケーキを破壊します。
すぐに破壊しないと何度でも当たり判定に引っかかってしまいます。

スプライトmySpriteを破壊するをドラッグします。
下の方にあるのでスクロールして見つけてください。

mySpriteを破壊するをドラッグ

 

見つからない時は、英語表記(下図)になっているかもしれません。

mySpriteを破壊する

 

ドラッグしたブロックを当たり判定の中に入れます。

Projectile を破壊したいので、mySprite を otherSprite に差し替えます。
外に飛び出た mySprite はゴミ箱に捨てましょう。

otherSpriteのタイプをProjectileにする

 

シミュレーターでプレイヤーを動かしてみましょう。
ケーキが当たった時、ちゃんと消えればOKです。

… 次回に続きます。

 

MakeCode Arcade

  1. MakeCodeはいかが
  2. りんご狩りゲーム
  3. りんご狩りゲーム(完)
  4. ピザを避けてゲーム
  5. ピザを避けて 2
  6. ピザを避けて(完)
  7. アカウント登録
  8. ケーキ早食いゲーム
  9. ケーキ早食い 2
  10. ケーキ早食い(完)
  11. 危険ドライブ
  12. 危険ドライブ 2
  13. 危険ドライブ(完)
  14. 15秒シューティング
  15. 15秒Shooting 2
  16. 15秒Shooting(完)
  17. ブロック崩し
  18. ブロック崩し 2
  19. ブロック崩し(完)
  20. ヘビキングを撃て
  21. ヘビキング(完)
  22. ちょびっと迷路
  23. ちょびっと迷路 2
  24. ちょびっと迷路(完)
  25. でんでんジャンプ
  26. でんでんJump 2
  27. でんでんJump(完)
  28. ミニダンジョン
  29. ミニダンジョン 2
  30. ミニダンジョン 3
  31. ミニダンジョン 4
  32. ミニダンジョン(完)