我正在使用一个嵌入了标准 Lua 5.1 的程序,并且正在尝试编写一个可以从中调用函数但无济于事的模块。
当前环境非常挑剔,如果我犯了错误,脚本会中断但不会出现任何错误,所以我们开始吧:
我有这样的东西(在moduletests.lua中):
local _ = {}
function _.prints()
HUD.AddUpdateBoxText("Hello World!", 200) --Equivalent to print()
end
然后我会尝试要求这个并调用它:
mts = require 'moduletests' --seems to cause no issues
mts.prints() --breaks the scripts
通常,如果 require 函数不正确,脚本会中断。这些脚本可以很好地满足要求,所以我认为它是正确的,但是在任何尝试调用 print 函数时它都会中断。
另一方面,我安装了另一个 lua 模块,并且能够成功地要求它并调用一个函数,这就是我为我的模块建模的内容。这是模块的代码。
这是我使用它的方式:
moses = require 'moses' --Works
local bok = moses.isInteger(6)
HUD.AddUpdateBoxText(tostring(bok), 700); --Works, outputs "true"
这工作得很好,完全符合预期。有人可以告诉我我的模块有什么不同或错误,或者对我如何制作更好的功能版本有任何建议吗?
谢谢大家,我衷心感谢您的帮助!非常感激!