プロダクトバックログアイテムの選択

プロダクトバックログから今回のスプリントで行うタスクを選択して In Progress に移します。
次はゲームオーバーの処理を作りましょう。

ToDoIn ProgressDone
背景を表示する
TARO を表示する
TARO を動かす
HANAKO を表示する
HANAKO を動かす
APPLE を表示する
APPLE を動かす
ORANGE を表示する
当たり判定をする
ゲームクリア処理をする
ゲームオーバー処理をする

詳細設計 (詳細仕様書の作成)

次の様に詳細仕様書を作りました。
ゲームオーバーの条件は(1) TARO が敵に触れた時、(2) タイムオーバーの時なので、次の様にしました。

クラス名詳細仕様
TARO ・敵に触れたらラベルに「GAME OVER」と文字列を表示してゲームを停止する。
MyWorld ・残り時間カウンターをフィールドに追加する (フィールド名は @export var timecount = 1000 )
・_process関数が呼び出される度に残り時間カウンターの数字を1減らして残り時間をラベルに表示する。
・残り時間カウンターが 0 以下になったらラベルに「TIME OVER」と表示してゲームを停止する。

スプリントバックログの作成

今回は以下のようなスプリントバックログを作りました。

ToDoIn ProgressDone
TARO が敵に触れた時のゲームオーバー処理を作る
タイムオーバー処理を作る

コーディング

スプリントバックログの内容に沿って、以下の様にコーディングします。


TARO が敵に触れた時のゲームオーバー処理を作る

「TARO」シーンのスクリプト(taro.gd)を開き、当たり判定処理の中を「GAME OVER」と表示してゲームを停止するプログラムに変更して下さい。


タイムオーバー処理を作る

「MyWorld」シーンのスクリプト(my_world.gd)を開き、フィールドに @export var timecount = 1000 を追加して下さい。
「MyWorld」シーンの_process関数の中で

残り時間カウンター(timecount)の数を1減らす

→残り時間カウンターの値を画面に表示する。

→残り時間カウンターが 0 以下になったら「TIME OVER」と表示してゲームを停止する。

という処理を追加して下さい。


テスト

コーディングが終わったらテストします。
MyWorldシーンを開いているのを確認してから「現在のシーンを実行」ボタンを押して動作確認して下さい。


スプリントレビュー、レトロスペクティブ、リリース

本来はその後スプリントレビュー、レトロスペクティブ、リリース作業があるのですが、今回は省略して次のスプリントに移ります。

なお、この時点でのプロダクトバックログの状態は次の通りです。

ToDoIn ProgressDone
背景を表示する
TARO を表示する
TARO を動かす
HANAKO を表示する
HANAKO を動かす
APPLE を表示する
APPLE を動かす
ORANGE を表示する
当たり判定をする
ゲームクリア処理をする
ゲームオーバー処理をする