SDHK_Tool.Dynamic.SD_MarkerClock 计时标记器

 

* 作者:闪电Y黑客

* 日期: 2019.6.11

* 功能:在Update 里进行计时标记

 

使用例子:

using SDHK_Tool.Dynamic;




public float Time = 3;

private SD_MarkerClock MarkerClock;



void Start()
{

    MarkerClock = new SD_MarkerClock();

}


void Update()
{

    if (MarkerClock.isClock(Time))
    {
       Debug.Log("时间到");
    }

     //if (MarkerClock.isClock(Time,true))
     //{
     //  Debug.Log("时间到");
     //}

}

 

全篇:

using System;
using SDHK_Tool.Static;

/*
 * 作者:闪电Y黑客
 * 
 * 日期: 2019.6.11
 * 
 * 功能:在update 里进行计时标记
 */

namespace SDHK_Tool.Dynamic
{
    /// <summary>
    /// 计时标记器
    /// </summary>
    public class SD_MarkerClock
    {
        private DateTime LastTime;
        private SD_MarkerEdge MarkerEdge ;

        public SD_MarkerClock(){
            MarkerEdge = new SD_MarkerEdge();
            LastTime= DateTime.Now;
        }

        /// <summary>
        /// 计时器:计算执行时间(一次性)
        /// 到达指定时间返回一帧true
        /// </summary>
        /// <param name="targetSeconds">定时</param>
        /// <returns>return : 触发标记</returns>
        public bool isClock(float targetSeconds)
        {
            return MarkerEdge.isEdge(SS_TriggerMarker.Clock(ref LastTime, targetSeconds));
        }


        /// <summary>
        /// 计时器:计算执行时间
        /// 循环触发:到达指定时间返回一帧true,并重置时间再次计时
        /// 持续触发:到达指定时间后,一直返回false
        /// </summary>
        /// <param name="targetSeconds">定时</param>
        ///	<param name="Switch">true/false(循环触发/持续触发)</param>
        /// <returns>return : 触发标记</returns>
        public bool isClock(float targetSeconds, bool Switch)
        {
            bool bit = SS_TriggerMarker.Clock(ref LastTime, targetSeconds);
            if (bit && Switch) Reset_Marker();

            return (Switch) ? MarkerEdge.isEdge(bit) : bit;
        }

        /// <summary>
        /// 重置检测器
        /// </summary>  
        public void Reset_Marker()
        {
            LastTime = DateTime.Now;
            MarkerEdge.Reset_Marker();
        }


    }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值