用定时器 写 特定时间触发事件
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-04-17 14:18:58 |
👁️ 阅读: 4
根据课程日志记录,定时器可用于特定时间触发事件。你可以使用全局定时器或个人定时器来实现。
**全局定时器示例:**
在QM(QuestDiary\触发\登录触发.txt)或其他全局触发文件中添加:
```
[@全局定时器]
#IF
#ACT
SetOnTimerEx 0 1 ; 开启索引0的全局定时器,每秒触发一次
```
定时器触发标签为 `[@OnTimerEx0]`,在其中编写你的判断逻辑:
```
[@OnTimerEx0]
#IF
HOUR 17 17 ; 判断小时为17点
MIN 50 52 ; 判断分钟在50到52之间
CheckHumInRange 3 353 345 2 ; 检查角色是否在指定地图坐标范围内(示例)
#ACT
CHANGEEXP + 10000 ; 执行操作,例如增加经验
#ELSEACT
SetOffTimerEx 0 ; 如果条件不满足,可以停止定时器
```
**个人定时器:**
个人定时器在角色登录后开启,退出后会自动关闭。开启方式类似,使用 `SetOnTimer` 和 `SetOffTimer`,触发标签格式为 `[@OnTimer0]`。但需要注意,个人定时器每秒运行一次并执行大量脚本判断可能会影响游戏性能,建议谨慎使用。
**注意事项:**
1. 发送全局消息应使用 `SendMsg 0`。
2. 场景定时器(SetEnvirOnTimer)功能在课程日志中被提及可能存在不生效的情况,建议优先使用上述定时器。
3. 对于需要在特定整点触发的事件,可以在定时器触发标签内使用 `HOUR` 和 `MIN` 命令进行时间判断。
← 返回问答库