meta data for this page
  •  

📚 差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
scripting:native:timer [2023/09/07 00:14] bibiboxsscripting:native:timer [2025/06/13 07:28] (当前版本) bibiboxs
行 2: 行 2:
 # Native/Timer # Native/Timer
  
-计时器是开发阶段常用功能,可进行`等待指定时间\间隔几次`执行某段代码。+计时器是开发阶段常用功能,可进行**等待指定时间\间隔几次**执行某段代码。
  
 **计时器实例在【切换世界\地图】时将会重置(切换世界前创建的计时器,在加载新世界时将会被清空)。** **计时器实例在【切换世界\地图】时将会重置(切换世界前创建的计时器,在加载新世界时将会被清空)。**
行 52: 行 52:
 ## Static Function ## Static Function
  
-### Timer.GetRealTime()+### Env.Timer.GetRealTime()
  
 > 获取当前时间(Timer所用的时间单位,以秒为单位,并非现实时间)。 > 获取当前时间(Timer所用的时间单位,以秒为单位,并非现实时间)。
行 59: 行 59:
  
 ```javascript ```javascript
-function Timer.GetRealTime(): float+function Env.Timer.GetRealTime(): float
 ``` ```
  
  
  
-### Timer.Create()+### Env.Timer.Create()
  
 > 新建一个计时器,定时\定次执行指定代码。 > 新建一个计时器,定时\定次执行指定代码。
 > >
-> 如果`repeat == 0`则表示无限重复计时器。+**如果`repeat == 0`则表示无限重复计时器。** 
 + 
 +**==特别注意:`Timer`代码可能在延迟后的不同的阶段执行,请注意执行时检查相关引用是否存在(因为有可能在此期间,某些引用已经失效,导致空指针异常)。==**
  
 ```javascript ```javascript
-function Timer.Create( action: Action, time: float, repeat: int = 1, tag: string = null ): Timer //返回Timer实例,可引用+function Env.Timer.Create( action: Action, time: float, repeat: int = 1, tag: string = null ): Timer //返回Timer实例,可引用
 ``` ```
  
 ```javascript ```javascript
-Timer.Create(() => { +Env.Timer.Create(() => { 
-    DLog("间隔一秒后,输出这段话");+    DLog("Output in one second!");
 }, 1); }, 1);
  
-Timer.Create(() => { +Env.Timer.Create(() => { 
-    DLog("每间隔一秒,输出一次这段话,总共输出三次");+    DLog("Output in one second. Output three times!");
 }, 1, 3); }, 1, 3);
 ``` ```
行 86: 行 88:
  
  
-### Timer.Remove()+### Env.Timer.Remove()
  
 > 关闭一个计时器,销毁实例。 > 关闭一个计时器,销毁实例。
  
 ```javascript ```javascript
-function Timer.Remove( timer: Timer ): bool+function Env.Timer.Remove( timer: Timer ): bool
 ``` ```
  
 ```javascript ```javascript
-let myTimer = Timer.Create(() => {+let myTimer = Env.Timer.Create(() => {
     DLog("间隔一秒后,输出这段话");     DLog("间隔一秒后,输出这段话");
 }, 1); }, 1);
  
-if(myTimer != null) Timer.Remove(myTimer);+if(myTimer != null) Env.Timer.Remove(myTimer);
 ``` ```
  
  
  
-### Timer.Find()+### Env.Timer.Find()
  
 > 根据`Tag`标识查找一个计时器,返回找到满足条件的第一个计时器。 > 根据`Tag`标识查找一个计时器,返回找到满足条件的第一个计时器。
行 111: 行 113:
  
 ```javascript ```javascript
-function Timer.Find( tag: string ): Timer+function Env.Timer.Find( tag: string ): Timer
 ``` ```
  
 ```javascript ```javascript
-Timer.Create(() => {+Env.Timer.Create(() => {
     DLog("间隔一秒后,输出这段话");     DLog("间隔一秒后,输出这段话");
-}, 1).SetTag("myTimer"); //这里也可以.Tag = "myTimer",或直接在Timer.Create()末尾参数填写tag,作用相同+}, 1).SetTag("myTimer"); //这里也可以.Tag = "myTimer",或直接在`Env.Timer.Create()`末尾参数填写tag,作用相同
  
-let findTimer = Timer.Find("myTimer"); +let findTimer = Env.Timer.Find("myTimer"); 
-if(findTimer != null) Timer.Remove(myTimer);+if(findTimer != null) Env.Timer.Remove(myTimer);
 ``` ```
  
行 137: 行 139:
 function timer.SetTag( tag: string ) function timer.SetTag( tag: string )
 ``` ```
 +
 +
 +
 +