LuaInterface 从 C# 访问 Lua 函数时遇到问题。
如果我有这样定义的 LuaFunction
function object:OnEvent()
-- Do something
end
这可以通过正常调用从 C# 访问,例如
(object["OnEvent"] as LuaFunction).Call();
没有参数。但是如果你看一下 Lua 中函数的定义,我用了一个“:”来定义函数。我可以这样重写它,这是一样的:
function object.OnEvent(self)
-- Do something
end
到目前为止,一切正常。但是现在,我将 OnEvent 替换为另一个函数。
function Replacement(self)
-- Do something other
end
object.OnEvent = Replacement
现在我遇到了一个问题。在这种情况下,我必须使用参数(对于 self)调用该函数。如果我不这样做,我会得到一个错误。
我可以通过两件事来解决这个问题:
- 说 LuaInterface,它应该每次调用带有“:”的方法,并带有 self 的参数。
- 我可以从 LuaInterface 中检索该函数需要多少参数。
但是,如何做这件事之一?
谢谢你。