タイマーを止めたタイミングで、時間経過による成績を出し、それをランキングとして表示してみましょう。
カウントアップタイマーが動き出し、スペースキーで停止。
2秒以内ならAランク、5秒以内ならBランク、それ以上ならCランクとしてテキスト表示します。
関連記事:
点数によるABC評価ランク
ハイスコアをつくる
ベストタイムを表示する
ベストタイム(最短時間)の更新とリセット
タイムアタックできる「カウントアップタイマー」
タイムアップでテキストを表示
制限時間になればButtonを表示
経過時間による成績ランク
タイマー用のテキストを作成し、名前をTimerTextに変更。
設定を以下のようにしました。
ゲームビューではこのように見えています。
続いて、ランキング用のテキストを作成し、RankTextと名前をつけました。
設定は以下のようにします。
ゲームビューではこのように見えています。
評価のテキストはスクリプトから表示させるので、「A」の文字は消しておきます。
空のオブジェクトを作成します。
TimerRank.csを作成し、空のオブジェクト(GameObject)に追加します。
TimerRank.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class TimerRank : MonoBehaviour { [SerializeField] Text timerText; [SerializeField] Text rankText; private float timer; private bool timeStop; void Start() { timer = 0; } void Update() { if(!timeStop) { timer += Time.deltaTime; timerText.text = "Time: " + timer.ToString("f2"); } if(Input.GetKeyDown(KeyCode.Space)) { timeStop = true; if(timer <= 2.0f) { rankText.text = "A"; } else if(timer <= 5.0f) { rankText.text = "B"; } else { rankText.text = "C"; } } } } |
ゲームプレイして、スペースキーを押してみましょう。
2秒以内であれば「A」、5秒以内なら「B」、それ以上経過すれば「C」が表示されます。
関連記事:
点数によるABC評価ランク
ハイスコアをつくる
ベストタイムを表示する
ベストタイム(最短時間)の更新とリセット
タイムアタックできる「カウントアップタイマー」
タイムアップでテキストを表示
制限時間になればButtonを表示