注册事件
2026年6月8日大约 1 分钟
RegisterEvent 事件回调
RegisterEvent 用于注册游戏事件回调。当指定的事件发生时,黑兔会调用你注册的回调函数,让你可以在事件触发时执行自定义逻辑。
函数签名
RegisterEvent(eventName, callbackFunction)| 参数 | 类型 | 说明 |
|---|---|---|
eventName | string | 事件名称,目前支持 "SWING_RESULT" |
callbackFunction | function | nil | 回调函数,传入 nil 可清空该事件的回调 |
注意事项
- 每个事件只能注册一个回调,重复注册会覆盖之前的。
- 回调函数在主线程执行,执行过程中游戏会等待,不要在回调里写死循环或耗时操作。
- 回调执行出错时会打印警告日志,不会导致游戏崩溃。
支持的事件
SWING_RESULT — 平砍结束
当你完成一次平砍攻击时触发。适用于卡英勇打击、怒气监控、重置普攻计时器等场景。
回调参数:
| 参数值 | 含义 |
|---|---|
1 | 主手平砍结束 |
2 | 副手平砍结束 |
3 | 远程武器射击结束 |
使用示例
示例 1:基础用法 — 监控平砍
把以下代码放在黑兔超级宏编辑器中,保存后即可在游戏里看到平砍提示:
function OnSwing(hand)
if hand == 1 then
print("主手平砍结束")
elseif hand == 2 then
print("副手平砍结束")
elseif hand == 3 then
print("远程攻击结束")
end
end
RegisterEvent("SWING_RESULT", OnSwing)提示
上面的初始化代码只会执行一次(复制到编辑器并保存时)。之后每次平砍结束都会自动调用 OnSwing。
示例 2:清空回调
不需要事件监听时,传入 nil 即可取消:
RegisterEvent("SWING_RESULT", nil)