作为最终用户,我以前曾多次使用过 Lua,我似乎记得能够在 Lua 中创建一个方法,然后通过 RegisterFunction 调用将所述方法注册到程序中。
我知道我必须在我的应用程序中创建 RegisterFunction 调用才能使此设置正常工作,但我的问题是我是否必须自己实现对 Lua 内部方法的支持?
据我所知,此时我唯一的选择是 DoString 和 DoFile,我在任何地方都找不到任何帮助。
我试图将 Lua 添加到所有实体代码的游戏设置中,我设置它允许我将脚本放入每种实体类型的某些事件中,并且我想将 Lua 方法附加到这些事件以调用它们。
例如:
OnDamagedEvent += DoLuaMethod(method, Entity ID);
根据我对任何编程如何工作的理解,我认为不可能仅从“DoString”执行整个方法,除非字符串一次包含整个方法,我想它可以,但它应该如何使用?我原本计划一次只向引擎发送一条线。
如果我在 Lua 中定义一个方法,它会永久(在那种情况下)在 lua 中定义以供使用吗?
如果是这样,我怎样才能将该方法访问器获取到 C# 中,然后访问它,发送调用参数所需的信息(我记得的那个有特定的方法类型,你必须从中选择,这样它就知道要发送什么信息方法)
如果我听起来像个菜鸟,我很抱歉,因为我不知道如何设置一些在概念上看起来如此简单的东西,我只是不确定代码应该如何布局以及我应该使用 LuaInterface 中的哪些方法!
在此先感谢您的帮助:)