今回つくるゲーム
難易度
今回はひっぱって飛ばす、モンスト風のゲームを作っていきます。これができるようになると色々なゲームに応用できるようになります。
※スクラッチ初心者の方は、まずこちらの、
もぐらたたきゲームの作り方(初級)
からチャレンジしてみてください。
準備
まずは、こちらにアクセスして、リミックスをしてください。
モンスト風ビンゴおじさん(素材)
リミックスの方法が分からないという方はこちらの記事を参考にしてください。
こちらにはすでにおじさんやきのこなどの必要なスプライトが用意されています。
おじさんをひっぱって発射する
ここでは、おじさんをひっぱって発射する動きを作っていきます。
まず”ひっぱる”という動きはスプライトを押して、そのままドラッグするという動きで、マウスを話した時に”発射”されます。
そのままコードを書くと以下の通りになります。
実際緑の旗を押して動かしてみると、ひっぱって話したら発射されますが、発射の方向が真横になってしまっていて、これではモンスト風ではありません。
ですので、おじさんが”中心”に向かって発射されるようにコードを改良します。
そのために”中心”のスプライトを作ることにします。作るスプライトは実際は表示しないのでなんでも良いです。
”中心”のスプライトのコードには、中心(X:0、Y:0)に位置して隠すというコードを書いておきましょう。
”中心”のスプライトが設定できたら、”おじさん”のスプライトに戻ります。
中心に向けて飛ばすという指示を追加します。これで引っ張った方向と逆向きにおじさんが飛んでいきます。
次に発射スピードの考え方を追加していきます。ひっぱればひっぱるほどスピードは早くなるはずです。
つまり中心からの距離とスピードが比例するということです。
そして発射された後、次第に速度が落ちていって最後には止まるはずです。その動きを下図のコードで表現します。
”ひっぱるを送る”は後で使うので追加しておきます。
こちらの動画のような動きになれば成功です。お好みや難易度に応じて、0.4や-0.03といった数値はいじってみましょう。
ひっぱっている感じを演出する
ここからひっぱっている感じをどのように演出するか説明していきます。
事前に用意してある”ひっぱり”のスプライトを活用しています。このスプライトおじさんから常に中心を向きながら伸びていて、引っ張るたびに大きくなっていくように表現します。
”ひっぱり”のスプライトに以下のコードを記載してください。
下の動画のようになれば成功です。
きのこを弾き飛ばす
モンストの醍醐味は、弾き飛ばした時の爽快感です。その爽快感が出るようにコードを書いてみます。
まず、緑の旗が押された時に、10個のきのこがランダムに配置されるようにしましょう。
もぐらたたきの作り方(中級-2)でも解説した通り、アイテムをランダムに配置する場合は”どこかに行く”のブロックがよく使われますが、それを使うと極端に端にアイテムが配置されてしまう場合があります。ですので下図のようにX軸とY軸でそれぞれ表示される範囲を限定することをお勧めします。
これでもゲームとしては成立しますが、おじさんがきのこに当たった時に飛ばされるアクションを簡単なコードで表現してみます。以下のように30度回して、X軸、Y軸それぞれランダムな方向に動くことで、弾かれるように見えます。
下の映像のようになれば完成です。
弾き飛ばされるアクションなどはもっとリアルにしていくこともできるので是非挑戦してみてください。
完成版のコードはこちらからも確認できます
モンスト風ビンゴおじさんゲーム