问题标签 [lua]

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 投票
3 回答
13993 浏览

syntax - Lua中是否使用大括号?

如果在 Lua 中使用大括号('{' 和 '}'),它们是做什么用的?

0 投票
1 回答
785 浏览

eclipse - 有人让 LunarEclipse 与 Eclipse 3.4.1 一起工作吗?

我昨天花了几个小时试图让 LunarEclipse 与 Eclipse 3.4.1 和 DLTK 1.0 一起工作

我在他们的 sourceforge 项目页面上查看了一些错误报告,他们说他们的 1.2.9 版本应该与 DLTK1.0 一起使用。问题是他们实际上还没有发布 1.2.9。不过,您可以在他们的 SVN 存储库中获得它。

我下载了他们的 svn 存储库。令我沮丧的是,我终其一生都无法消除项目中的所有错误。它一直说它无法解析org.eclipse.core.runtime.IProgressMonitor即使我添加了 org.eclipse.core.runtime 外部 .jar 文件。

我猜 1.2.9 还没有完成。所以我想知道是否有人对如何做有一些提示。也许我应该得到一个旧版本的 eclipse 和 DLTK。

我已经检查了 LuaEclipse,但这也没有用。

概括:

  • 有没有人让 LunarEclipse 与 eclipse 3.4.1 一起工作?
  • 你能推荐任何其他用于 Eclipse 的 Lua IDE 或插件吗?
0 投票
4 回答
3121 浏览

c++ - 如何从目录加载所有文件?

就像标题所说的那样;如何加载目录中的每个文件?我对 c++ 和 lua 都感兴趣。

编辑:对于windows,我会很高兴有一些真正的工作代码,尤其是lua。我可以用 c++ 的 boost::filesystem 来做。

0 投票
3 回答
1273 浏览

multithreading - Lua 注册表在新状态下不可见

在从我的 Lua 脚本调用的 C 函数中,我luaL_ref用来存储对函数的引用。但是,如果我随后尝试使用返回的整数索引从不是从同一状态派生的不同线程获取该函数,我得到的只是nil. 这是似乎可以证明这一点的最简单示例:

我发现它szType包含值'nil'。

我的理解是注册表在所有 C 代码之间全局共享,所以任何人都可以解释为什么这不起作用?

如果注册表不是以这种方式全局共享的,我怎样才能像我需要的那样从另一个脚本访问我的值?

0 投票
4 回答
5154 浏览

types - 从 C 中查询 Lua 用户数据类型

"stackoverflow.test"我有一个具有某种元表类型(例如)的 Lua 用户数据对象。从 C 代码中,我希望能够准确检查它是哪种类型,并根据结果表现出不同的行为。是否有一个很好的方便函数(很像luaL_checkudata,但如果答案不是您想要的,则不会出错)让我查询用户数据的元表类型名称?如果没有,我想我需要使用lua_getmetatable,但是我有点不清楚如何确定刚刚添加到堆栈中的元表的名称。

澄清一下:我使用的是 Lua 5.1,其中 luaL_checkudata 的行为发生了变化。我知道在 5.0 中它不会出错。

0 投票
3 回答
2139 浏览

lua - PCALL 有什么问题,或者 Wowwiki 有什么问题吗?

这是一个 WoW(魔兽世界)lua 脚本问题。没有多少人在这里被问到,但我无处可去,而 Stackoverflow 是程序员的绿洲。

问题:

Wowwiki 声明第 2、3、4 个参数是您调用函数的第 1、2、3 个参数。我不认为这是真的。我发现第 3、第 4、第 5 个参数最终成为第 1、第 2、第 3 个参数。

链接:http ://www.wowwiki.com/API_pcall

功能:

问题:

当我尝试示例时,我收到“尝试在本地 'arg1'(一个 nil 值)上执行连接”的错误。如果我将代码更改为:

然后我得到“bob10”的输出。第二个论点在哪里,它是为了什么?

更多测试:

结果:尝试连接本地 'arg1'(一个 nil 值)

结果:字符串 value10

我是 lua 新手,我不明白为什么这些不同。

新问题:

以下代码有效,但为什么呢?

以下之间有什么区别:(“。”与“:”)

  • 函数 BobsToolbox.Test1(arg1)
  • 功能 BobsToolbox:Test1(arg1)
0 投票
2 回答
54625 浏览

scripting - 反编译 Lua 字节码的最佳工具?

我真的很难找到一个好的工作 Lua 字节码反编译器。我正在尝试反编译我在游戏中找到的一些脚本文件,但它们似乎已被编译,但似乎并非不可能解码。什么是反编译 Lua 二进制文件的最佳工具?

0 投票
6 回答
18602 浏览

c++ - 调试嵌入式 Lua

你如何调试嵌入在 c++ 应用程序中的 lua 代码?

据我所知,要么我需要购买一个特殊的 IDE 并链接到他们特殊的 lua 运行时(呃)。或者我需要在游戏引擎中构建一个调试控制台,使用lua 调试 API调用。

我倾向于编写自己的调试控制台,但这似乎需要做很多工作。我可以更好地花时间来完善游戏的其他部分。

0 投票
5 回答
1752 浏览

c++ - 有没有办法在 C/C++ 中以编程方式确定 Lua 函数需要多少参数?

有没有办法在从 C/C++ 代码调用 Lua 函数之前确定它需要多少个参数?

我看了看,lua_Debuglua_getinfo他们似乎没有提供我需要的东西。

看起来我有点违背 Lua 的精神,但我真的想证明我在 Lua 和 C++ 之间的接口。当从 Lua 代码调用 C++ 函数时,接口会验证 Lua 提供了正确数量的参数以及每个参数的类型是否正确。如果发现参数有问题,lua_error则发出 a。

我想反过来检查类似的错误。当 C++ 调用 Lua 函数时,它至少应该检查 Lua 函数没有声明过多的参数。

0 投票
4 回答
1202 浏览

c++ - 一个函数需要一个抽象类型 A 的 C++ 对象。如何将 A 子类的 Lua 对象传递给它?

我想将一个派生自纯虚拟 C++ 类的类的 Lua 对象传递给一个期望纯虚拟类的 C++ 对象的函数。我怎样才能做到这一点?

我是 lua 和 luabind 的新手,所以请耐心等待。

在 C++ 中:

在 Lua 中:

再次在 C++ 中: