ゲームオーバー処理の変更
今回は、ゲームオーバー時の処理に変更を加えました。
以前の仕様では、プレイヤーの体力が0になると効果音が鳴り、画面中央に赤い文字で「GAME OVER」と表示されるだけの、非常にシンプルな作りでした。最低限の機能は満たしていましたが、リトライするにはブラウザの更新ボタンを押す必要がありました。
そこで今回の変更では、体力が0になった際に主人公のセリフが画面に表示されるように変更しました。また、キーを押すと指定のステージまで戻れるようにしたため、ただゲームオーバーを眺めるだけでなく、テンポよく再挑戦できるようになりました。
これによって、ゲームとしてのメリハリや操作性がより向上し、遊びやすさも改善できたと感じています。
ちなみに今回のプログラムは前回のgamestart.htmlを流用しています。
ゲームのプログラムのtick()内のゲームオーバー処理
sndGameover.play();
gc.fillStyle = "Red";
gc.font = "28px serif";
gc.fillText("GAME OVER", 305, 230); //gameover画面
clearInterval(ticktimer); //タイマーidをクリアする命令文 tick処理停止
return;
を削除しました。
新たに
window.location.href ="gameover1.html"
を追加しました。
1-1、1-2、1-3でゲームオーバーになった場合は1-1へ戻ります。
2面、3面では2-1、3-1へ戻るようにする予定です。
ゲームオーバー画面に表示されるセリフ
まさお「しまった、やられたか...。くそっ、敵の攻撃が予想外すぎたな。
身体が持たない...。仕方ない、次はもっと慎重にいこう。
また1-1から出直しだ。次は倒す!」
spaceキーを押してください
この文章はchatGPTに生成してもらいました。