前回の ピザを避けてゲームを作ろう2 のつづきです。
「 ピザを避けてゲーム 」は、今回で完結です。
MakeCode Arcade は便利すぎて大丈夫かな? と思うことがあります。
他の言語でゲームを作る場合は、自分で作り込まなければならない部分が多いからです。
でも、プログラミングに必要な思考力を鍛えるには、とにかくたくさんゲームを作ることが大切です。
そう考えると、この環境を活用するのは良い選択だと思います。
ライフを減らそう
プレイヤーがピザと当たったとき、ライフを減らします。
つまり残機制のゲームにします。
情報 の ライフを -1 だけ増やす をドラッグします。

当たり判定の中に入れます。

プレイヤーがピザに当たると、画面の左上に2つのハートマークが表示されます。
このハートは残機を表しており、「あと2回当たるとゲームオーバーですよ」という意味になります。

最初から残機の表示がなく、減ったときに初めて表示されるのは不親切です。
そこで、ゲーム開始時から残機を表示させるようにしましょう。
情報 の ライフを 3 にする をドラッグします。

最初だけ の中に入れます。
これでゲーム開始から残機の表示が行われます。

親切な設計
ゲームはほぼ完成しました!
実際に遊んでみてください。
プレイしてみて、私が感じたのは 「アヒルの位置が上にありすぎる」 ということでした。
もう少し画面の下の方に配置して、プレイヤーが余裕を持って遊べるようにしましょう。
スプライト の mySpriteの位置を x0 y0 にする をドラッグします。

最初だけ の中に入れます。

表示座標を x 80 y 100 に変更します。
ちなみに mySprite はアヒルの変数名です。

画面を確認しましょう。下の方に表示されました。
これでゲーム開始直後にピザに当たることが減ると思います。

スコアを表示しよう
スコアを表示させます。
情報 の スコアを 1 だけ増やす をドラッグします。

ゲームが更新されたとき500ミリ秒毎 の中に入れます。

ここに追加することで、ピザの発生数がそのままスコアになります。
シューティングゲームのように敵を倒す要素がないため、時間経過でスコアが増える仕組みにしました。
画面の右上にスコアが表示されます。

スコアを追加したことで、ゲームオーバーになったとき自動でスコアの表示が行われます。

ハイスコアを表示しよう
ゲームオーバーになったとき、ハイスコアを表示したいと思います。
現在、ライフが 0 でゲームオーバーになります。これはゲームに「負けた」という終わり方です。
そのため自動でハイスコアが表示されません。
勝ち判定のゲームオーバーにする必要があります。
情報 の ライフがゼロになった時 をドラッグします。

何もない所に置きます。

ゲーム の 勝ち でゲームを終了する をドラッグします。

ライフがゼロになった時 の中に入れます。
これでライフが 0 になった時、勝ち判定のゲームオーバーになります。

ゲームオーバー画面を確認しましょう。
ハイスコアが出たとき「New Best Score!」が表示されます。ハイスコアではない時はこれまでのハイスコアが表示されます。

完成です
「ピザを避けて」ゲームの完成です。
全コードを載せておきます。

プレイしてみて「ちょっと簡単すぎる」と思ったらピザの速度を調整しましょう。
65 くらいにすると難しくなります。

共有しよう
作った作品をネットで公開したいとき共有ボタンをクリックします。

次の表示になります。
プロジェクトを共有 をクリックするとネットに公開されます。
一度公開すると取り消すことができません。プロジェクトを削除しても公開したものは消えません。
誰かを不快にさせるもの、個人情報が書かれたものを絶対に公開しないでください。

共有すると URL が決まります。これを覚えておきましょう。
この URL を友達に知らせることで遊んでもらえます。

私が公開したゲームを実際に遊んでみてください。
下のリンクをクリックすると遊べます。
遊べるだけでなく Show Code ボタンを押せばコードも見れます。
ホームに戻ろう
ホームボタンをクリックしてホーム画面に戻りましょう。

ホームに戻ると、いま作成したプロジェクトが表示されます。
ここをクリックすれば、また編集画面になります。

これで「ピザを避けて」は終了です。
お疲れさまでした。