问题标签 [luainterface]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
520 浏览

c# - 注册函数而不使用它们“对象引用未设置为对象的实例。”

我有一个 C# 中的 IRC Bot,我现在想使用 Lua 脚本。在机器人启动时,我想注册函数,并检测是否添加了新文件然后加载它。我已经完成了新文件/重新加载脚本功能,但是当我点击运行时,我得到“对象引用未设置为对象的实例”。在我希望用户能够使用的自定义功能上。

这是当前代码:

在机器人的 Main() 中,我目前只有 2 行:

0 投票
2 回答
293 浏览

c# - C# Luainterface 两个点

有没有办法通过将两个点合二为一来更改对 Lua 中我的 C# 对象方法的访问?我想改变这个:

进入这个:

没有得到任何错误。有任何想法吗?提前致谢。

0 投票
2 回答
205 浏览

c# - LuaInterface 没有调用方法

我试图在我的 C#.NET 程序中实现 lua 脚本,但是当我执行代码时,其中一种方法没有被执行。

这是课程:

当我执行这行 lua 代码“message(pname)”时,它甚至没有尝试执行方法“playername()”来返回一些值,所以它在 DoString() 行中崩溃,因为“pname”正在“返回”无效的。

0 投票
0 回答
500 浏览

lua - LuaInterface 错误加载模块(Lua for Windows 可以)

当我做文件时:

这是我得到的错误。

该 dll 是我制作的,当我从 LFW(用于 Windows 的 lua)调用此 lua 时,它可以工作。我需要环境变量之类的东西吗?(我将 lua/5.1 文件夹添加到 EV 中)

0 投票
1 回答
2562 浏览

c# - 如何使用 c# 将表传递给 lua

如何使用 c# 将表传递给 lua

我正在使用 Lua 接口,这是我的 c# 代码

这是lua代码:</p>

但是我得到了结果,tmptable 是函数类型而不是表类型。像这样:

那么如何将表格传递给lua?

0 投票
2 回答
1184 浏览

c# - 你如何将一个对象从 c# 传递给 lua 的函数?

我在 c# 上使用 Lua 接口将我创建的对象传递给 lua 的函数。它成功调用了该函数,但 lua 不断抛出错误:

LuaInterface.LuaException: /hook.lua:32: 尝试索引本地 'objj' (一个 nil 值)

这是 C# 代码:

这是lua代码:

该函数实际上正在被调用,但我不确定它是否不起作用......

0 投票
0 回答
147 浏览

lua - luaedit 3..0.10 不会显示简单脚本的输出

我试图从我在 luaedit 3.0.10 中的第一个脚本中获取输出并且没有取得太大的成功。我正在使用http://lua.gts-stolberg.de/en/Mathe.php的在线教程中的示例脚本 :

我在 windows vista 下运行 luaedit,并解压了 lua 二进制文件,但找不到将 luaedit 链接到它们的方法,因此假设 luaedit 包含一个 lua 运行时作为其自身的一部分。

这些论坛中已经发布了一个类似的问题,但答案不适用于我的 luaedit 版本。答案是指“显示输出”窗口中的一个窗格,该窗格未出现在我的 luaedit 版本中。我的版本只有一个“输出”窗口,可以从“调试”下拉菜单中访问。虽然它确实说显示输出,但似乎没有任何方法可以改变它显示输出的位置。答案还提到了一个开始调试的绿色按钮,这在我的编辑器版本中也没有。相反,工具栏左侧有三个按钮:一个三角形的“开始调试”按钮、一个双横线的“立即中断”按钮和一个方形的“停止调试”按钮,它们都是蓝色的。

那么......这个编辑器的这个版本要如何解决问题?还是开发人员引入的一个错误,因为他们必须修复一个没有损坏的界面?

0 投票
0 回答
277 浏览

c# - 我如何知道在 c# - luainterface 中执行了哪个字符串块?

我在 C# - lua 项目上运行。该项目的所有逻辑都在 lua 部分,c# 部分包含内置控制台以显示结果并接受输入。所以调试几乎都发生在lua部分。我的 lua 代码如下所示:

然后在我的项目中,c# 包含两个字符串块,即 main 和 functionsholder。然后我的 c# 代码运行如下:

问题(我认为)是日志消息。

要调试此代码,我认为了解代码失败的位置很重要。但是我无法获得正确的信息,因为 LuaException 只提供行号信息,而不是块名称。我的错误处理代码给出了一个块名称,但它没有用,因为在其他块中抛出了异常。

到目前为止,感谢您耐心阅读本文,我的问题就在这里(而且很明显):如何获得正确的错误消息以进行调查?我想要两个信息,它们是 1)抛出异常的行号。2) 确切行所属的字符串块名称。

0 投票
1 回答
225 浏览

c# - C# LuaInterface / NLua:使用相同脚本为多个对象编译 Lua 路由?

我的系统由可能包含唯一名称的实体和在实体生成时编译的 Lua 脚本组成,任何时候都可能生成多个相同的实体。

目前我正在为每个实体实例化一个新的 NLua.Lua() 并重新编译脚本,这只需要大约 5-10 毫秒,但是如果同时创建 100 个完全相同的实体,主线程将冻结 0.5-1 秒。我不能让所有实体都引用一个预编译的上下文。如果一个实体受到伤害,他们都认为自己受到了伤害。

我正在尝试提出一个解决方案,其中具有相同 Lua 脚本的类似实体不需要为每个实体单独编译上下文,而是保持自己独特的脚本。可能吗?

0 投票
0 回答
74 浏览

c# - vs 2015 RC项目的LuaInterface问题

我正在使用 LuaInterface 允许 lua 在我的 C# 控制台应用程序上。我最初是在vs2012上编程的,没有任何问题。我确实必须将这段代码添加到 app.config 文件中才能运行:

我目前正在使用带有 .NET 4.6 的 vs 2015 RC,它给了我这个错误:

我也下载了 luainterface 的源代码,并且能够在 vs 2015 中编译该代码。有任何关于这个问题的指针或解决方案吗?谢谢您的帮助!