参考范围#
该目录描述了已知公共X4调整接口. 标识的名称并不能证明其合同的完整性,也不能证明在游戏中执行. 没有分发的模块文件,内部文件和完整的源文件.
证据类型#
| 证据 | 建立 | 仍需要验证 |
|---|---|---|
| 声明 | 参数顺序,C类型和C返回类型 | 导出,ABI,背景,存储存储权和使用寿命 |
| X4 其他类型 | 属性名称,表达式类型和所需属性 | 评估的类型,活动有效载荷和游戏效果 |
| Lua 5.1 / LuaJIT | 标准图书馆合同 | 现行X4环境中的可用性和扩展性 |
| 具体事件文档 | 呼叫回调参数和场意义 | 版本,注册时间和物体使用寿命 |
expression 架构类型描述 MD 表达式,并不确定求值结果的类型。过滤属性不声明 event.param 类型。忽略结果不能证明它是 none、void 或 nil。
阅读结果#
Lua 能返回几个值. 逗号分开结果位置;垂直条分开替代方案.未知意味着未确立的合同,而任何依赖于文本.没有和无效表示没有直接回报,但效果和输出缓冲仍然可能存在.
类型C并不总是与其Lua表示相匹配. 提示器是cdata;当建立存储寿命时,ffi.string将C字符串复制到Lua字符符串中. 没有任何精度的转换身份证. 看到 类型和方法, 标识符 和 cdata.
事件与订阅#
| 机制 | 使用 |
|---|---|
| Lua 事件 | 具有准确名称和回调的RegisterEvent在适当的UI背景下 |
| 接口到MD | 标条件中event_ui_triggered |
| MD 引擎事件 | 事件_* 状态和精确的过器 |
这些航线有不同的合同. 随着RegisterEvent的自动使用,不能使用 MD事件名称. 按上下文进行一次登记;确定对确切发送者的回调类型和计数. 其他 Lua / MD 通信桥 提供一个独立的学习例子.
实例和验证#
学习碎片需要所述的背景,变量和生命周期. 没有记录的实验, 没有完整的合同保留明确的限制;不要发明缓冲尺寸或有效载荷形状.