目的
为了解决代码到处存在倒计时,每次进行计时的时候,都要一向上传递Update方法。还有就是为了解决游戏中定时任务的触发问题
实现
设计了一个计时任务单元Event,来存放所需要触发的回调事件和属性
设计了一个计时管理Timetask来处理任务单元
设计了一个对外的TimeUtil
当然还有一些其他的,这个看源码你就知道了
优化
我选择了限制计时器1秒走一次。来减少Update里函数的执行次数
我选择了让服务器给我一个当前时间戳(一次)作游戏的起始时间。通过Time.realtimeSinceStartup来获取游戏运行时间,来保证了与服务器的时间的一致性。之前我错误的使用了Time.time
功能
你可以在任何需要等待时间处理的事物上,选择使用它,哪怕是UI需要显示的倒计时。
不过它不能在你第一次添加任务回调的时候立即执行你的回调。