扫盲 2026.10.05 07:04 43 次浏览 0 条评论

传奇脚本延时执行

延时执行就是让脚本别急着往下跑,先等几秒再继续。传奇里最常用的是 DELAYGOTO 和 DELAYCALL 两个命令。

DELAYGOTO 秒数 @标签:延迟跳转,单位是秒。DELAYCALL 秒数 @标签:延迟调用,跑完还会回到原来的位置。想循环延时就用个人定时器 SetOnTimer。

坑点:延迟是排队执行的,玩家连点 NPC 会叠一堆延迟,最好加个变量挡住,执行完再清零。

[@main]
#IF
EQUAL N$延时中 0      ; 没在延时中才继续
#ACT
MOV N$延时中 1        ; 上锁,防止重复触发
DELAYGOTO 5 @延时到   ; 5 秒后跳到下面的标签
SENDMSG 5 已排队,5秒后发奖励
BREAK

[@延时到]
#ACT
MOV N$延时中 0        ; 解锁
GIVE 金创药 1
SENDMSG 5 奖励发放完成

定时器写法:QFunction 里 SetOnTimer 5 1 开一个 5 秒的个人定时器,然后在 [@OnTimer1] 里写要干的事,用完记得 KillTimer 关掉,不然一直在跑。

说点什么 0

行思随记

欢迎来到:行思随记