(日記のまとめページはこちら:https://wakky.tech/unity-baseball-game/)
長らく更新をストップしていたが、久しぶりに進める。今の状態だと、制限時間が過ぎてもゲームが終わらず、そのまま続いてしまう。制限時間が「0」になったらゲームが終了するようにしたい。ゲームを終了する、といっても色々な処理が考えられる。最終的には、終了した後にゲーム終了画面に遷移するようにしたいが、今回はまずBGMやボールの撃ち出しを停止させてみる。まずはCountDownTimer.csを改造して、gameTimerIntをpublic staticにして、別のscriptから触れるようにする。
何でもかんでもpublicにするのはちょっとどうかなとも思うけど、とりあえず思いついた方法でやってみる。次に、ShootBall.csのUpdateの中に以下を追加して、カウントが0になったらボールの撃ち出しをストップする。
if(CountDownTimer.gameTimerInt == 0) {
shootSwitch = false;
}
また、BGMを停止するため、新たにScriptを追加した。
Audioの停止については以下を参考にした。
https://docs.unity3d.com/jp/current/ScriptReference/AudioSource.Stop.html
後はこのScriptをBGMオブジェクトに追加するだけ。
とりあえず今回はここまで。いきなりゲーム画面を遷移させるのも味気ないので、次は「ゲーム終了」のような文字を画面上に表示させてみようと思う。