Menu
CoddyTech

ベストタイム

CoddyのUnityジャーニー「本格的なゲームを作る」セクションの一部。レッスン 56/60。

プラットフォーマーの最後のステップです。プレイヤーは走り、ジャンプし、乗り物に乗り、復活し、宝石を集めて次のレベルへ進みます。また、各レベルのベストタイムはPlayerPrefsに保存されます。

challenge icon

チャレンジ

中級

各レベルは自己ベストタイムを記録します。

  1. FinishLineで、using TMPro;、[SerializeField] private TMP_Text bestText;、およびTime.deltaTimeによって増加する走行時間を追加します。
  2. Start()で、BestTime_にレベル名を加えたキーで保存された自己ベストを、Best: 12.4 sのように表示します。記録がない場合はBest: noneと表示します。
  3. ゴール時に、シーンを読み込む前に、初回またはより速い走行時間を保存します。

「プレイ」を押してタイムを記録し、その記録を更新しましょう。その後、「確認」を押します。

自分で試してみよう

using UnityEngine;
using UnityEngine.SceneManagement;

public class FinishLine : MonoBehaviour
{
    void OnTriggerEnter(Collider other)
    {
        if (other.GetComponent<Player>() == null) return;

        Scene level = SceneManager.GetActiveScene();
        Debug.Log(level.name + " complete!");
        int next = level.buildIndex + 1;
        if (next >= SceneManager.sceneCountInBuildSettings)
        {
            next = 0;
        }
        SceneManager.LoadScene(next);
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

本格的なゲームを作るのすべてのレッスン

自分で練習してみよう: Unityプレイグラウンド