声明计时开关
private bool TimeOnSet;
声明生成时间
private List<float> mGenerateTimes;
在某个时机记录一下,比如按下按钮的瞬间,开始计时
this.RegisterEvent<TimeOnEvent>(e =>
{
TimeOnSet = true;
//姣忎釜PaperEffectList鎵€鍦ㄧ殑鍐呭鍧囪杩涜璁$畻銆傚苟璁板綍
for (int i = 0; i < PaperEffectList.Count; i++)
{
mGenerateTimes.Add(Time.time);
}
}).UnRegisterWhenGameObjectDestroyed(gameObject);
this.RegisterEvent<TimeStopEvent>(e =>
{
TimeOnSet = false;
mGenerateTimes = new List<float>();
}).UnRegisterWhenGameObjectDestroyed(gameObject);
}
检查是否触发
if (TimeOnSet)
{
for (int i = 0; i < PaperEffectList.Count; i++)
{
if (Time.time - mGenerateTimes[i] > PaperEffectList[i].Timecheck)
{
mGenerateTimes[i] = Time.time;
//鍙戦€佽绠楀垎鏁扮殑鍛戒护
this.SendCommand(new WorkGoCommand(PaperTypeList[CurrentPage], PaperEffectList[i].Effectnum* PaperTypeList[i].Precent/100));
}
}
}