前回の ケーキ早食いゲームを作ろう のつづきです。
メイクコード アーケード はギャラリーに絵が用意されています。
でも、エディタもあるので自分で絵を描くこともできます。
一度、試してみてはどうでしょうか。
ケーキを発生させる準備をしよう
このあと、ケーキを発生させます。そのための準備をします。
ゲーム の中の ゲームが更新された時 500ミリ秒毎 をドラッグします。
これは決められた間隔で処理を行うときに使います。
最初だけ の外に配置します。
ケーキを発生させよう
ケーキのスプライトを用意します。
スプライト の中の黄色で指定したブロックをドラッグします。
下の方にあるのでスクロールして見つけてください。
発射体のところの 発射体○を横から の方です。間違えないように注意しましょう。
このブロックを ゲームが更新された時 の中に入れます。
発射体の絵を用意します。
ギャラリーからケーキの絵を選びます。
絵が2つあります。小さい方(解像度の低い方)を選びます。
もし間違えても、あとで変更すればいいです。
いま、右下に向かってケーキが飛んでいます。
真下に飛ばすため、速度 vx を 0 にします。
画面いっぱいにケーキを降らせます。
スプライト の mySpriteの位置をx0y0にする をドラッグします。
ゲームが更新された時 の中に配置します。
変数名を mySprite から projectile に変更します。
乱数を使って発生位置を変更します。
計算 の ランダムな数字を選択0から10まで をドラッグします。
下の方にあるのでスクロールして見つけましょう。
位置 x の所に入れます。(次の絵を参照)
乱数の範囲を 10 から 150 までに変更します。
ついでに発生位置 y を -5 に変更します。この理由が分からない時は前のページに戻って再読しましょう。
画面の横幅は 160 です。
乱数の範囲を 10 から 150 にした理由は、画面内に入れたかったからです。
プレイヤーに取らせることを前提にしたものだからです。
もし、これが隕石のようなものなら -5 から 165 までの乱数として、自然発生したような感じにします。
ケーキの速度を変更しよう
今回のゲームは「時間内により多くのケーキを食べる」ことが目的です。
ちょっと考えてみてください。
もしケーキが簡単に食べれるようなら、何度プレイしても同じようなスコアになると思います。
また、誰がプレイしても同じようなスコアになりますよね。
ゲームの面白さに自己の成長(プレイが上手くなっていく)があります。
ですから、ゲームは基本的に少し難しい方がいいのです。
本当はゲームが進むにつれ難易度が上がっていく方がいいのですが、プログラムが複雑になります。今回は初めから少し難しくしようと思います。
そこで、ケーキの落下速度を上げます。
速度 vy を 80 に変更しましょう。
ケーキの量も増やします。
発生間隔を 200 ms に変更します。
画面を確認しましょう。ケーキが沢山降ってきます。
当たり判定を入れよう
プレイヤーとケーキの当たり判定を作ります。
スプライト の中の黄色で指定したブロックをドラッグします。
下の方にあるのでスクロールして見つけてください。
当たり判定のブロックは、連結させずに外に配置します。
otherSprite のタイプを Projectile(発射体)にします。
これでプレイヤーとケーキの当たり判定は用意できました。
プレイヤーとケーキが当たったとき、ケーキを破壊します。
すぐに破壊しないと何度でも当たり判定に引っかかってしまいます。
スプライト の mySpriteを破壊するをドラッグします。
下の方にあるのでスクロールして見つけてください。
見つからない時は、英語表記(下図)になっているかもしれません。
ドラッグしたブロックを当たり判定の中に入れます。
Projectile を破壊したいので、mySprite を otherSprite に差し替えます。
外に飛び出た mySprite はゴミ箱に捨てましょう。
シミュレーターでプレイヤーを動かしてみましょう。
ケーキが当たった時、ちゃんと消えればOKです。
… 次回に続きます。