Unity实现倒计时功能
更新时间:2020年6月25日 10:34 点击:1616
本文实例为大家分享了Unity实现倒计时功能的具体代码,供大家参考,具体内容如下
有两种思路可以实现倒计时,一个是Update,另一个是协程。这里只展示核心的算法思路,有收获的还请点个赞哦
Update
首先定义三个变量,访问权限按需求设置:
float GameTime; // 游戏总时间,int或者float都可,单位为秒 float TimeLeft; // 游戏剩余时间,单位为秒 float Timer; // 计时器 Text TimeCountDown; // 计时器Text引用
思路: 首先用GameTime初始化TimeLeft,在Update中,计时器不断增加,每过一秒,TimeLeft就-1,然后重置计时器。代码如下:
void Update() { Timer += Time.deltaTime; if (Timer >= 1) // 每过一秒执行一次 { GameTime -= 1; // 剩余秒数-1 if (TimeLeft <= 0) // 剩余时间为0,游戏暂停 { Time.timeScale = 0; } int _minute = TimeLeft / 60; // 计算剩余分钟数 float _second = TimeLeft % 60; // 计算不足一分钟的剩余秒数 // 对计时器文本格式化输出 TimeCountDown.text = _minute + ":" + string.Format("{0:00}", _second); m_TrGame = 0f; // 重置计时器 } }
协程
相对来说,协程就要简单一点。同样先定义几个变量:
float GameTime; // 游戏总时间,int或者float都可,单位为秒 float TimeLeft; // 游戏剩余时间,单位为秒 Text TimeCountDown; // 计时器Text引用
思路: 首先依然用GameTime初始化TimeLeft,然后在协程中设置循环,每次循环TimeLeft都-1。代码如下:
IEnumerator TimeCountDown() { TimeLeft = GameTime; // 初始化剩余时间 while (true) { int _minute = TimeLeft / 60; // 计算剩余分钟数 float _second = TimeLeft % 60; // 计算不足一分钟的剩余秒数 // 对计时器文本格式化输出 TimeCountDown.text = _minute + ":" + string.Format("{0:00}", _second); if (TimeLeft <= 0) // 剩余时间为0,游戏暂停 { Time.timeScale = 0; yield break; // 退出协程必须有,上一条语句不能暂停协程 } yield return new WaitForSeconds(1f); // 每次进入循环都等待1s } }
一定要自己写一遍哦
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持猪先飞。
上一篇: Unity实现倒计时组件
下一篇: C# 一个WCF简单实例
相关文章
- 这篇文章主要为大家详细介绍了vue实现同时设置多个倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-05-20
- 倒计时一般是用来表示未来某一时刻距现在时刻还剩多少时间。倒计时在WEB上应用非常广泛,如考试系统倒计时,团购网站中的优惠活动倒计时等等。今天,我们来使用jQuery实现一个简单的倒计时功能。本文以团购网站的倒计时为...2015-10-21
- 这篇文章主要为大家详细介绍了Unity时间戳的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
- 这篇文章主要介绍了基于JavaScript实现网页倒计时自动跳转代码 的相关资料,需要的朋友可以参考下...2015-12-29
- 这篇文章主要为大家详细介绍了用javascript实现倒计时效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
- 在淘宝等购物网站,我们都会看到一个发送短信倒计时的按钮,究竟是如何实现的呢?下面小编通过本篇文章给大家分享一段代码关于js实现手机短信按钮倒计时,需要的朋友参考下...2016-01-02
- 下面小编就为大家带来一篇单击按钮发送验证码,出现倒计时的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 代码...2017-07-06
- 这篇文章主要介绍了JS实现倒计时,精确到天数、时、分、秒,还为大家分享了parseInt() 函数的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-11-22
- 这篇文章主要介绍了jquery实现倒计时效果,根据设计一个游戏引出的倒计时功能,需要的朋友可以参考下...2015-12-16
- 这篇文章主要为大家详细介绍了uni-app使用countdown插件实现倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-11-02
- 这篇文章主要为大家详细介绍了JavaScript实现前端倒计时效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
- 这篇文章主要介绍了C#基于TimeSpan实现倒计时效果的方法,比较实用的功能,需要的朋友可以参考下...2020-06-25
Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)
通过Twirl 旋转节点对Gradient Noise 梯度噪声节点进行操作,就可得到一个旋转的旋涡效果。具体实现代码跟随小编一起通过本文学习下吧...2021-07-11- 这篇文章主要介绍了BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟) 的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-08-24
- 这篇文章主要介绍了JQuery实现的按钮倒计时效果,涉及jQuery结合时间函数动态修改按钮属性的相关技巧,需要的朋友可以参考下...2015-12-25
- 本文主要介绍了4种延时执行的方法,主要包括Update计时器,Invoke,协程,DoTween,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-07
- 本文给大家介绍了如何使用javascript实现倒计时跳转到其他页面的方法以及实现原理,非常的简单实用,有需要的小伙伴可以参考下。...2016-01-20
- 本篇文章主要介绍了ionic+AngularJs实现获取验证码倒计时按钮,具有一定的参考价值,有兴趣的可以了解一下。...2017-04-27
- 这篇文章主要为大家详细介绍了Unity shader实现遮罩效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
- 这篇文章主要介绍了unity 判断鼠标是否在哪个UI上的两种实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-10