unity累加计时和倒计时实现

/// <summary>
/// 倒计时文本
/// </summary>
private Text RedRainTimerText;

int hour;
int minute;
int second;
int millisecond;
// 1小时  时 分 秒
float timeSpend = 4*60*60;
private void FixedUpdate()
{
    // 倒计时刷新
    if (RedRainTimerText.gameObject.activeInHierarchy)
    {
        // 累加计时 timeSpend += Time.deltaTime;
        // 倒计时
        timeSpend -= Time.deltaTime;

        hour = (int)timeSpend / 3600;
        minute = ((int)timeSpend - hour * 3600) / 60;
        second = (int)timeSpend - hour * 3600 - minute * 60;
        millisecond = (int)((timeSpend - (int)timeSpend) * 1000);

        RedRainTimerText.text = string.Format ("{0:D2}:{1:D2}:{2:D2}.{3:D3}", hour, minute, second, millisecond);
    }

}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现倒计时,可以在 Unity 中使用 Coroutine 协程和 C# 脚本。以下是一个简单的实现步骤: 1. 在 Unity 的场景中创建一个空对象,取名为“Countdown”。 2. 在“Countdown”对象上添加一个 Text 组件,用于显示倒计时的时间。 3. 创建一个 C# 脚本文件,取名为“CountdownControl”。 4. 在“CountdownControl”脚本中,声明一个公共 Text 变量,用于引用“Countdown”对象中的 Text 组件。 5. 在“CountdownControl”脚本中,使用 Coroutine 协程来实现倒计时。 6. 在 Coroutine 协程中,使用 WaitForSeconds 函数来等待一秒钟,然后更新倒计时的时间,并将其显示在 Text 组件中。 7. 当倒计时结束时,可以执行相应的操作,例如播放音效、显示提示信息等。 以下是一个示例脚本: ``` using UnityEngine; using UnityEngine.UI; public class CountdownControl : MonoBehaviour { public Text countdownText; public float totalTime = 60.0f; // 倒计时总时间为60秒 void Start() { StartCoroutine(Countdown()); // 启动协程 } IEnumerator Countdown() { float remainingTime = totalTime; while (remainingTime > 0) { countdownText.text = "倒计时:" + Mathf.RoundToInt(remainingTime).ToString(); yield return new WaitForSeconds(1.0f); remainingTime -= 1.0f; } countdownText.text = "倒计时结束!"; // 在此处添加相应的操作 } } ``` 将该脚本添加到“Countdown”对象上,并将“Countdown”对象拖放到场景中的相机下,即可实现一个简单的倒计时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值