/* 文件名:Timer.nut 路径:Core/Timer/Timer.nut 创建日期:2025-02-11 23:25 文件用途:定时器 */ class _Timer_ { Exec_Tree = null; constructor() { //执行树 Exec_Tree = []; //注册Proc _Game_Logic_Func_._Timer_Proc <- Proc.bindenv(this); getroottable().Timer <- this; } //下帧执行 function SetNextFrame(target_func, ...) { local target_arg_list = []; target_arg_list.push(getroottable()); for (local i = 0; i< vargv.len(); i++) { target_arg_list.push(vargv[i]); } //设置下一次执行 local func_info = []; func_info.push(target_func); func_info.push(target_arg_list); Exec_Tree.push(func_info); } function Proc(Dt, Lister) { foreach(Info in Exec_Tree) { //函数 local func = Info[0]; //参数 local func_args = Info[1]; //执行函数 func.acall(func_args); } } } _Timer_();