スクラッチ-もう怒ったぞー

前回ではもぐらたたきの得点を増やす処理を追加しました。

前回のままでも十分にゲームらしくなってきていますがもう少し面白くしてみましょう。

やりたいことはゲームの途中でもぐらたたきの難易度をあげてみましょう。

難易度のあげ方としてはもぐらの表示する速度を早めて叩くのを難しくしましょう。

それではチャレンジしてみましょう!

もぐらたたきに回数制限を設ける

まずはもぐらたたきに回数制限をもたせるようにしましょう。

表示される回数を決めてしまって決めた回数に達したらゲームを終わりにしましょう。

表示回数の変数を作成する

まずは表示回数の変数を作成しましょう。

変数は名前を『表示回数』にして『すべてのスプライト用』で作成しましょう。

変数を作成したら『表示する』ブロックのしたに『表示回数を1ずつ変える』ブロックをおきましょう。

動かしてみて表示回数の値が増えていればOKです!

スクラッチ-クラゲの表示回数をカウント

ゲーム終了の処理を追加する

表示回数がわかるようになれば回数に達した時にゲームが終了する処理を追加します。

まずは確認がしやすいように5回表示されたらゲーム終了されるようにしましょう。

5回表示された次のことが処理されるようにしましょう。

  • クラゲに「ゲーム終了!」と言わせる
  • 全ての処理を止める

『5回表示されたら』のような処理は何を使えば良いでしょうか?

分岐でしたね。

『もし表示回数が5なら』というブロックを作りましょう。

スクラッチ-表示回数が5なら

『ゲーム終了!と3秒言う』ブロックを追加して表示回数をいろんな値に変えて動かしてみましょう。

『表示回数』が5の時に「ゲーム終了!」と言ってくれていればOKです。

スクラッチ-ゲーム終了!

作成したブロックのかたまりを『ずっと』ブロックの最後に追加しましょう。

ただこのままだとゲームが終わりませんので『全てを止める』を追加しておきましょう。

『ゲーム終了!と3秒言う』ブロックの後に追加します。

スクラッチ-全てを止めるを追加

ゲーム終了の表示回数の半分の回数になったら表示させる速度を早くする

表示している回数が変数として扱えるようになりましたね。

表示している回数を利用して途中でゲームの難易度をあげるという処理をしてみましょう。

よくもぐらたたきゲームである「怒ったぞー」ってやつですね。

表示速度を早くする

今のプログラムで表示速度を制御しているのはどのブロックでしょうか?

『1秒待つ』ブロックですね。

表示回数が5回より大きくなったら『0.7秒待つ』でなければ『1秒待つ』というブロックを作ってみましょう。

表示回数は10回にしておきましょう。

スクラッチ-待つ時間を変更する

上記のブロックを追加できたら動かしてみましょう!

スクラッチ-表示速度が速くなる

6回目からの表示で速度が速くなっていますね。

「もう怒ったぞー」と言わせる

速くするのがわかるように5回目の表示に「もう怒ったぞー」と言わせてみましょう。

もし表示回数が5なら「もう怒ったぞー」と3秒言わせてみましょう。

スクラッチ-もう怒ったぞー

この状態で動かしてみましょう!

スクラッチ-もう怒ったぞー

良い感じに動いていますね。

ひと通り動くようになったので表示回数をもっと増やすなどして実際に遊んでみましょう!

プログラムをもっとよくするために

実際に遊ぶ時には表示回数を50回ぐらいにしたいですよね。

ただそのままにしておくと今度は確認する時に大変ですよね。(長い回数待たないといけないので)

さらに表示回数を条件として使っている他の分岐も値を修正しないといけないですね。

今のプログラムだと3箇所あります。

実際に遊ぶ時には25,25,50に修正して、また確認する時には5,5,10に修正してなどやっていると大変です。

ゲーム終了の回数だけ変更したら他の修正が必要ないようにプログラムを修正してみましょう。

少し難しいですがこれまでにやったことで十分にできますので色々と試してみましょう。

今回はここまでです、お疲れ様でした!

次はこちらの記事にチャレンジしてみましょう!

おすすめの記事