using UnityEngine;using System.Collections;using UnityEngine.UI;public class Timer : MonoBehaviour { PRivate float allTime =0; bool isPauseTime = false; bool isStartTime = false; public Text timerText; private int hour; private int minute; private int second; private float timeDelta; void Start() { ShowTimerStr(allTime); } void Update() { if (!isPauseTime&&isStartTime) { allTime = Time.time-timeDelta; ShowTimerStr(allTime); } } //开始计时 public void StartTimer() { timeDelta = Time.time; isStartTime = true; ContinueTimer(); } //暂停计时 public void PauseTimer() { isPauseTime = true; Time.timeScale = 0; } //继续计时 public void ContinueTimer() { if(isStartTime) { isPauseTime = false; Time.timeScale = 1; } } //获取小时 string GetHour(float time) { hour = (int)(time / 3600); string timerStr; if (hour < 10) timerStr = "0" + hour.ToString()+":"; else timerStr = hour.ToString() + ":"; return timerStr; } //获取分钟 string GetMinute(float time) { minute = (int)(time-hour*3600)/60; string timerStr; if (minute<10) timerStr = "0" + minute.ToString() + ":"; else timerStr = minute.ToString() + ":"; return timerStr; } //获取秒 string GetSceond(float time) { second = (int)time-hour*3600-minute*60; string timerStr; if (second < 10) timerStr = "0" + second.ToString() ; else timerStr = second.ToString() ; return timerStr; } //显示计时字符串 void ShowTimerStr(float time) { timerText.text = GetHour(time) + GetMinute(time) + GetSceond(time); }}
新闻热点
疑难解答