效果
首先创建一个脚本
脚本编写
using UnityEngine;
using System.Collections;
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Timer : MonoBehaviour
{
public int TotalTime = 90;//总时间
public Text TimeText;//在UI里显示时间\
public string LoadsceneName;
private int mumite;//分
private int second;//秒
// public Image loser;
void Start()
{
StartCoroutine(startTime()); //运行一开始就进行协程
}
public IEnumerator startTime()
{
while (TotalTime >= 0)
{
//Debug.Log(TotalTime);//打印出每一秒剩余的时间
yield return new WaitForSeconds(1);//由于开始倒计时,需要经过一秒才开始减去1秒,
//所以要先用yield return new WaitForSeconds(1);然后再进行TotalTime--;运算
TotalTime--;
TimeText.text = "Time:" + TotalTime;
if (TotalTime <= 0)
{ //如果倒计时剩余总时间为0时,就跳转场景
LoadScene();
}
mumite = TotalTime / 60; //输出显示分
second = TotalTime % 60; //输出显示秒
string length = mumite.ToString();
if (second >= 10)
{
TimeText.text = "0" + mumite + ":" + second;
} //如果秒大于10的时候,就输出格式为 00:00
else
TimeText.text = "0" + mumite + ":0" + second; //如果秒小于10的时候,就输出格式为 00:00
}
}
void LoadScene()
{
//倒计时结束
//loser.gameObject.SetActive(true);
Application.LoadLevel(LoadsceneName);
}
}
讲解
功能大概都看的懂吧
不墨迹
开始倒计时 倒计时时间控制
计时结束后跳转场景
把text赋值进去
这里写要跳转的场景名字
建议
在这个方法里可以修改你需要的倒计时结束后的操作