Unityテトリスの作り方-11

テトリス作成

前回、スコアを表示させてスコアが1500になるとGameClearメソットが実行されて、ゲームが再度始まるところまで作れました。

今回は制限時間を60秒にして60秒以内でスコアが1500に到達したら、GameClearメソットを実行させて、60秒以上かかる場合はGameOverメソッドを実行させる処理を追加します。

Scene内にTimeTextを表示させる

下記の画像1のようにTimeTextを表示させます。
①Canvasを右クリックして、Textを選択

画像1

そうすると新しいTextがSceneの中心に表示されると思います。
次に画像2のようにTextを真上に動かしてフォントサイズとカラーを変更します。

②名前をTimeTextに変更
③TimeTextの位置を上に変更
④TimeTextの数値を60に変更
⑤フォントサイズとカラーは好みで変更してください

画像2

時間制限のスクリプトを追加する

追加したGameManagementスクリプトを一旦すべて載せます。
後ほど解説するので、どのような処理が書かれているか確認しましょう。

タイマー関連の変数を追加

上記3つの変数を定義しました。

TimeManagementメソットを追加

gameTimeに60を設定しているので、gameTimeが0になった場合、GameOverメソットが呼び出されるという処理を追加しました。

もちろん、TimeManagementメソットは毎秒数える必要があるので、Updateメソットに追加することも忘れないでください。

ここまで、完成したら下記の画像3のようにTimeTextを実際に反映させます。

①GameManagementをクリック
②TimeTextをGameManagementに反映させる

画像3

Unity学習者おすすめの本

この本はUnity学習者におすすめです。
内容がとても良くてイラストで重要なポイントは解説されているので、理解しやすいです。

操作する内容は画像付きなので、同じ操作しても同じ動作にならないというようなことはないように工夫されています。

一冊勉強するだけで、大量の知識をインプットできるので、テトリス作成と同時進行で試してみてください。

Unityの教科書 Unity 2020完全対応版 (2D&3Dスマートフォンゲーム入門講座)

今回のまとめ

今回はゲーム内に制限時間をつけて、60秒以内にゲームがクリアされなければ、ゲームオーバーになるという設定にしました。

次回は、一時停止ボタンと画面を作成します。
そろそろ、このテトリス作成も最後に近づいています。

少しでもこのブログがためになっていたら嬉しいです。
最後まで読んでいただきありがとうございました。

⭐️あわせて読もう!
Unityテトリスの作り方-12

コメント

タイトルとURLをコピーしました