每隔一秒执行一次
语法用 c# 的,逻辑比较简单,用其他语言只要有调用时间的函数就很容易实现。
- 方法一
适合 按下鼠标左键发射子弹 的场景
private float nextTime = 1;
private void Update_1()
{
if (Time.time >= nextTime)
{
Func();
nextTime = Time.time + 1;
}
}
- 方法二
适合 满足一定条件之后,等待一会再执行Func() 的场景
private float totalTime = 0;
private void Update()
{
totalTime += Time.deltaTime; //累加每帧消耗时间
if (totalTime >= 1)
{
Func();
totalTime = 0;//清空累加的时间
}
}
- 方法三
private void Start()
{
InvokeRepeating("Timer", 1, 1); // (方法名称,开始时间,间隔)
}
private void Timer()
{
Func();
}