时间倒计时

  • 效果
  • 首先创建一个脚本
  • 脚本编写
  • 讲解
  • 建议

效果

首先创建一个脚本

脚本编写

 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赋值进去

这里写要跳转的场景名字

建议

在这个方法里可以修改你需要的倒计时结束后的操作

更多推荐

超简单的倒计时代码编写