栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

unity 计时器

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

unity 计时器

unity 计数器

计时器就是在游戏界面的时间,可以是一个正计时,也可以是倒计时,现在简单分享一下简单的计时代码`

private void Update()
        {

            totalTime -= Time.deltaTime;
            if (totalTime <= 0)
            {
                //todo:计时结束
            }

        }

这样一个写在update中的及时功能就OK了
下面分享一个稍微复杂一点的 使用协程写计时的功能

 public class Timer
    {

        public float Duration;

        public float LeftTime;


        private Action _updateAction;

        private Action _callAction;

        private bool _isPause;

        public Timer(float duration,Action updateAction=null,Action callAction=null,Action intiAction = null)
        {
            LeftTime = duration;

            Duration = duration;

            if (intiAction != null) intiAction.Invoke();

            _updateAction = updateAction;

            _callAction = callAction;

            _isPause = false;

        }


        public void OnUpdate(float deltaTime)
        {

            LeftTime -= deltaTime;
            if (LeftTime <= 0)
            {
                if (_callAction != null)
                    _callAction.Invoke();
            }
            else
            {
                if (_updateAction != null && !_isPause)
                    _updateAction.Invoke();  
            }
        }


        public void SetTimerTrick(bool b)
        {
            _isPause = b;
        }
    }

这样一个计时的代码就完成了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/906238.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号