Menu
CoddyTech

タイムトライアル

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

庭園を横切るタイムトライアルです。ランナーは時計が10秒を示した状態で一方の端からスタートし、生け垣を回り込んで、時間切れになる前に反対側の端にある白いゴールにたどり着かなければなりません。道中にある金色の時計を取ると、それぞれ数秒ずつ時間が追加されます。残り時間が少なくなると時計が赤くなり、時間がなくなるとコースは最初からやり直しになります。時間内にゴールすると、ゲームはFinishシーンに進みます。

2つのスクリプトを書きます。ランナー(CharacterController)にはRunnerを、RaceオブジェクトにはRaceを設定します。

challenge icon

チャレンジ

難しい

RunnerとRaceを書きます。

  1. Runner:Moveでは、speedとgravityを使い、controller.Moveで移動します。Clockのトリガーは破棄され、bonusが加算されます。Goalに触れると終了します。
  2. Race:時間はtimeLimitから始まり、Time.deltaTimeずつ減ります。Time: 7.4のように表示され、3未満になると赤色になります。
  3. 0になったら、Time's up!とログに出力して再読み込みします。ゴールに着いたら、Finished with 4.2 s leftとログに出力し、Finishを読み込みます。

「プレイ」を押して、時間内にゴールしましょう。その後、「確認」を押します。

自分で試してみよう

using UnityEngine;
using UnityEngine.SceneManagement;
using TMPro;

public class Race : MonoBehaviour
{
    public float timeLimit = 10f;
    public float bonus = 3f;
    public TMP_Text timeText;
}

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

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