软件制作过程中经常遇到需要计时或者计算时间的功能编写,下面的代码利用率还是挺高的
using UnityEngine;
using System.Collections;
public class Timing : MonoBehaviour
{
public static Timing time;
float _num = 60.0f;
int definiteValue = 10;
int mindefiniteValue = 1;
bool timeing = false;
string timeValue = "";
float timeDelta;
void Awake()
{
time = this;
}
// Update is called once per frame
void Update()
{
if (timeing)
{
GetTime();
}
}
/// <summary>
/// 计时功能
/// </summary>
/// <returns></returns>
void GetTime()
{
timeDelta += Time.deltaTime;
string tsecond = "";
string tminute = "";
int second = Mathf.FloorToInt(timeDelta % _num);
int minute = Mathf.FloorToInt(timeDelta / _num);
tsecond = second.ToString();
tminute = minute.ToString();
if (second < definiteValue)
{
tsecond = "0" + second.ToString();
}
if (minute < definiteValue)
{
tminute = "0" + minute.ToString();
}
if (minute < mindefiniteValue)
{
tminute = "00";
}
timeValue = tminute + " : " + tsecond;
}
/// <summary>
/// 开始计时
/// </summary>
public void StartTimeing()
{
timeValue = "00 : 00";
timeDelta = 0.0f;
timeing =TimeingState.timeingState;
}
/// <summary>
/// 停止计时
/// </summary>
public void StopTimeing()
{
timeing = false;
timeDelta = 0.0f;
}
/// <summary>
/// 返回得到的时间
/// </summary>
/// <returns>timevalue</returns>
public string GetTimeValue()
{
return timeValue;
}
}
比较简单,复杂的还需要我去研究,一起加油吧!